论文部分内容阅读
既然杀毒软件被誉为电脑的最后防线,而病毒作者为了吃到更多美味的“肉鸡”,找杀毒软件的麻烦就变得理所当然,甚至让杀毒软件直接瘫痪,这个时候病毒可就为所欲为了。真有这么厉害?这可不忽悠你,病毒对杀毒软件,可是真刀真枪,毫不留情!现在就带你领略下病毒的几种招数吧!
内存清零劫杀进程
病毒那么疯狂,杀死杀毒软件的方法也必然有很多种,这还从主流的结束杀毒软件进程的方法说起,进程是杀毒软件的命根子,结束它自然也就可以斩杀杀毒软件了。但这个过程也并不容易,方式虽然多样,但基本步骤可以分为以下三部分。
第一步:提升战斗力
操作系统就好像是一座“紫禁城”,里面的人(进程)都有自己的工作范围和工作权限(这个权限就是腰牌),想要随心所欲地在紫禁城里面活动,就需要具有更高的权限(获得更高权限的腰牌),对于病毒来说要想结束杀毒软件的进程,就必须先拿到能够结束杀毒软件的进程权限的腰牌才行。例如,小春子(病毒化名)负责御膳房的工作,他想要铲除一个名为杀毒软件的人物,于是小春子琢磨着升迁到御书房(御书房可是个好地方,和皇帝老子在一起干活就方便多了,时不时来点儿谗言什么的,邪恶的目的就达到了)。于是他就开始了换腰牌大行动。首先他要提供下自己的代号,比如小春子,还需要提供下以前在哪个地方工作的,比如以前御膳房工作(相当于组织关系的转出),然后经过批准获得了御书房的腰牌(组织关系的转入)。现在病毒就具有足够的权限干其他相关的事情。
第二步:找到目标程序
当了御书房的小太监以后(这可是皇帝身边的大红人),病毒就开始趾高气扬起来。准备滥用私刑对一些以前欺负过自己的杀毒软件进行镇压。于是病毒使用在紫禁城发布通缉令通缉杀毒软件。一个名为ToolHelp32的亲卫队不断地对进出午门的人进行画像存档,然后一个个地和通缉令上的人物进行匹配,一直找到叫做杀毒软件的可疑份子为止。
第三步:结束对手进程
亲卫队在午门发现可疑分子的照片,想进一步却发现不知道可疑分子住在哪里,由于很多杀毒软件为了防止被奸人陷害常常隐藏自己的“家庭地址”——handle(句柄)不让人发现,可病毒经过研究发现csrss.exe (户部)意外地保留着几乎所有进程的进程句柄(家庭地址)。经过第一步、第二步的操作以后。病毒从csrss.exe那里获得一份珍贵的句柄表(户口簿),然后开始挨家挨户地检查相应的进程是不是杀毒软件的进程,找到杀毒软件的家庭地址以后,病毒就领着一批狗腿子找到杀毒软件,闯入民宅进行诸如写入垃圾文件,比如清空容器的内存的恶意操作,最终导致进程崩溃。家被抄了,杀毒软件也就失去了它的防御功能。
捅破“窗户” 乖乖休假
“进程”的重要性使得它成为兵家必争之地,病毒的对抗和杀毒软件的保护呈现白热化的技术对抗中,这就让一些爱耍小聪明的病毒决定另辟蹊径,通过结束窗口的方式来斩杀杀毒软件。
大家每天都在使用Windows,是否知道屏幕上的一个个方块都是一个个窗口,每个程序都有属于自己的窗口。窗口上还有一些字符,比如专杀、监控。并且每一个窗口的背后都存在一个消息,循环处理用户的点击、窗口大小改变等操作,从某个角度来说,窗口程序(绝大多数杀毒软件都有图形界面)就是进程,结束相应的进程窗口也就结束了。正因为这个特性,病毒从窗口也找到了结束杀毒软件的方法。
通常病毒通过FindWindowA(查找特殊的窗口,主要对针对一些包含特殊窗口类别的杀毒软件,比如很多杀毒软件都包含一个叫做#32770窗口),GetWindowTextA(获取窗口的字符)获取包含特定字符串的窗口,比如监控、主动防御、防火墙。找到以后病毒就会发送一些消息,比如WM_DESTROY(一个窗口被销毁),WM_CLOSE(当一个窗口或应用程序要关闭时系统发送一个信号),甚至于通过模拟鼠标点击的方式让指定的程序退出,比如一些主动防御类软件退出的时候会提示“是否要退出监控”,“是否运行”,病毒在这个时候就会模仿人去点击那个“是”按钮(整个过程可以用如图2所示的图来表示)。
另类玩法 有去无还
1.消息插队导致假死
磁碟机病毒首先通过FindWindowExA查找包含特殊字符串的窗体,然后通过PostMessage 循环发送消息,一到500条才停止,导致杀毒软件窗口因为不能处理消息导致处于假死的状态。
2.杀毒软件自摆乌龙自己卸载自己,杀毒软件通常都带有卸载程序。有些病毒就盯上了杀毒软件自带的卸载程序,它通过调用杀毒软件自己的卸载程序并模拟鼠标的方式卸载杀毒软件,更有甚者有些病毒自己制作了卸载程序,山寨病毒卸载程序甚至比官方程序卸载更彻底。
3.利用有些主动防御,启发式杀毒软件对于系统文件的放行结束杀毒软件的进程,比如很多病毒使用Taskkill /im egui.exe强行结束nod32的进程(见图3)。
4.利用操作系统的一些特殊功能,比如罗姆病毒会在杀毒软件目录新建一个名为ws2_32.dll的文件夹使得杀毒软件主程序或者升级程序运行出错。
小编物语
我们在为读者准备这篇文章的时候,也只是让大家清楚杀毒软件的弱点,不要过分依赖杀毒软件,注意保护它们。同时,意外地发现国外的杀毒软件通常都可以被病毒以简单的方式杀掉,反而国内的杀毒软件自我保护比较强硬,比如江民的自保护就做得很强悍,大部分病毒都不能结束江民的进程(带来的负面作用就是容易蓝屏)。同时杀毒软件作为一个巨大的软件项目往往不能在短期内加强对针对性病毒的防御,选择一些辅助类软件给系统二次护航就很有必要,通常杀毒软件厂商都会提供一些免费的小软件实现二次防御,大家可以根据自己的爱好选择,比如金山网盾可以从源头上从阻止病毒通过恶意网页入侵电脑,又如EQ、SSm之类的主动防御软件可以监控系统的一些操作并给出提示,等等。
内存清零劫杀进程
病毒那么疯狂,杀死杀毒软件的方法也必然有很多种,这还从主流的结束杀毒软件进程的方法说起,进程是杀毒软件的命根子,结束它自然也就可以斩杀杀毒软件了。但这个过程也并不容易,方式虽然多样,但基本步骤可以分为以下三部分。
第一步:提升战斗力
操作系统就好像是一座“紫禁城”,里面的人(进程)都有自己的工作范围和工作权限(这个权限就是腰牌),想要随心所欲地在紫禁城里面活动,就需要具有更高的权限(获得更高权限的腰牌),对于病毒来说要想结束杀毒软件的进程,就必须先拿到能够结束杀毒软件的进程权限的腰牌才行。例如,小春子(病毒化名)负责御膳房的工作,他想要铲除一个名为杀毒软件的人物,于是小春子琢磨着升迁到御书房(御书房可是个好地方,和皇帝老子在一起干活就方便多了,时不时来点儿谗言什么的,邪恶的目的就达到了)。于是他就开始了换腰牌大行动。首先他要提供下自己的代号,比如小春子,还需要提供下以前在哪个地方工作的,比如以前御膳房工作(相当于组织关系的转出),然后经过批准获得了御书房的腰牌(组织关系的转入)。现在病毒就具有足够的权限干其他相关的事情。
第二步:找到目标程序
当了御书房的小太监以后(这可是皇帝身边的大红人),病毒就开始趾高气扬起来。准备滥用私刑对一些以前欺负过自己的杀毒软件进行镇压。于是病毒使用在紫禁城发布通缉令通缉杀毒软件。一个名为ToolHelp32的亲卫队不断地对进出午门的人进行画像存档,然后一个个地和通缉令上的人物进行匹配,一直找到叫做杀毒软件的可疑份子为止。
第三步:结束对手进程
亲卫队在午门发现可疑分子的照片,想进一步却发现不知道可疑分子住在哪里,由于很多杀毒软件为了防止被奸人陷害常常隐藏自己的“家庭地址”——handle(句柄)不让人发现,可病毒经过研究发现csrss.exe (户部)意外地保留着几乎所有进程的进程句柄(家庭地址)。经过第一步、第二步的操作以后。病毒从csrss.exe那里获得一份珍贵的句柄表(户口簿),然后开始挨家挨户地检查相应的进程是不是杀毒软件的进程,找到杀毒软件的家庭地址以后,病毒就领着一批狗腿子找到杀毒软件,闯入民宅进行诸如写入垃圾文件,比如清空容器的内存的恶意操作,最终导致进程崩溃。家被抄了,杀毒软件也就失去了它的防御功能。
捅破“窗户” 乖乖休假
“进程”的重要性使得它成为兵家必争之地,病毒的对抗和杀毒软件的保护呈现白热化的技术对抗中,这就让一些爱耍小聪明的病毒决定另辟蹊径,通过结束窗口的方式来斩杀杀毒软件。
大家每天都在使用Windows,是否知道屏幕上的一个个方块都是一个个窗口,每个程序都有属于自己的窗口。窗口上还有一些字符,比如专杀、监控。并且每一个窗口的背后都存在一个消息,循环处理用户的点击、窗口大小改变等操作,从某个角度来说,窗口程序(绝大多数杀毒软件都有图形界面)就是进程,结束相应的进程窗口也就结束了。正因为这个特性,病毒从窗口也找到了结束杀毒软件的方法。
通常病毒通过FindWindowA(查找特殊的窗口,主要对针对一些包含特殊窗口类别的杀毒软件,比如很多杀毒软件都包含一个叫做#32770窗口),GetWindowTextA(获取窗口的字符)获取包含特定字符串的窗口,比如监控、主动防御、防火墙。找到以后病毒就会发送一些消息,比如WM_DESTROY(一个窗口被销毁),WM_CLOSE(当一个窗口或应用程序要关闭时系统发送一个信号),甚至于通过模拟鼠标点击的方式让指定的程序退出,比如一些主动防御类软件退出的时候会提示“是否要退出监控”,“是否运行”,病毒在这个时候就会模仿人去点击那个“是”按钮(整个过程可以用如图2所示的图来表示)。
另类玩法 有去无还
1.消息插队导致假死
磁碟机病毒首先通过FindWindowExA查找包含特殊字符串的窗体,然后通过PostMessage 循环发送消息,一到500条才停止,导致杀毒软件窗口因为不能处理消息导致处于假死的状态。
2.杀毒软件自摆乌龙自己卸载自己,杀毒软件通常都带有卸载程序。有些病毒就盯上了杀毒软件自带的卸载程序,它通过调用杀毒软件自己的卸载程序并模拟鼠标的方式卸载杀毒软件,更有甚者有些病毒自己制作了卸载程序,山寨病毒卸载程序甚至比官方程序卸载更彻底。
3.利用有些主动防御,启发式杀毒软件对于系统文件的放行结束杀毒软件的进程,比如很多病毒使用Taskkill /im egui.exe强行结束nod32的进程(见图3)。
4.利用操作系统的一些特殊功能,比如罗姆病毒会在杀毒软件目录新建一个名为ws2_32.dll的文件夹使得杀毒软件主程序或者升级程序运行出错。
小编物语
我们在为读者准备这篇文章的时候,也只是让大家清楚杀毒软件的弱点,不要过分依赖杀毒软件,注意保护它们。同时,意外地发现国外的杀毒软件通常都可以被病毒以简单的方式杀掉,反而国内的杀毒软件自我保护比较强硬,比如江民的自保护就做得很强悍,大部分病毒都不能结束江民的进程(带来的负面作用就是容易蓝屏)。同时杀毒软件作为一个巨大的软件项目往往不能在短期内加强对针对性病毒的防御,选择一些辅助类软件给系统二次护航就很有必要,通常杀毒软件厂商都会提供一些免费的小软件实现二次防御,大家可以根据自己的爱好选择,比如金山网盾可以从源头上从阻止病毒通过恶意网页入侵电脑,又如EQ、SSm之类的主动防御软件可以监控系统的一些操作并给出提示,等等。