冲击波病毒会不停地利用IP扫描技术寻找网络上系统为Win2000或XP的计算机,找到后就利用DCOM/RPC缓冲区漏洞攻击该系统,一旦攻击成功,病毒体将会被传送到对方计算机中进行感染,使系统操作异常、不停重启、甚至导致系统奔溃。
冲击波病毒是利用在 2003 年 7 月 21 日公布的 RPC 漏洞进行传播的,该病毒于当年 8 月爆发。病毒运行时会不停地利用 IP 扫描技术寻找网络上系统为 Win2000 或 XP 的计算机,找到后就利用 DCOM/RPC 缓冲区漏洞攻击该系统,一旦攻击成功,病毒体将会被传送到对方计算机中进行感染,使系统操作异常、不停重启、甚至导致系统奔溃。另外,该病毒还会对系统升级网站进行拒绝服务攻击,导致该网站堵塞,使用户无法通过该网站升级系统。只要是计算机上有 RPC 服务并且没有打安全补丁的计算机都存在有 RPC 漏洞,具体涉及的操作系统是:Windows 2000XPServer 2003NT4.0。
2003 年 7 月 16 日,发布了“RPC 接口中的缓冲区溢出”的漏洞补丁。该漏洞存在于 RPC 中处理通过 TCP/IP 的消息交换的部分,攻击者通过 TCP135 端口,向远程计算机发送特殊形式的请求,允许攻击者在目标机器上获得完全的权限并以执行任意代码。
该病毒充分利用了 RPC/DCOM 漏洞,首先使受攻击的计算机远程执行了病毒代码;其次使 RPCSS 服务停止响应,PRC 意外中止,从而产生由于 PRC 中止导致的一系列连锁反应。针对 RPC/DCOM 漏洞所编写的病毒代码构成了整个病毒代码中产生破坏作用的最重要的部分。
通过对冲击波病毒的整个工作流程进行分析,可以归纳得到病毒的行为特征:
1.主动攻击:蠕虫在本质上已经演变为黑客入侵的自动化工具,当蠕虫被释放(release)后,从搜索漏洞,到利用搜索结果攻击系统,到复制副本,整个流程全由蠕虫自身主动完成。
2.利用系统、网络应用服务漏洞:计算机系统存在漏洞是蠕虫传播的前提,利用这些漏洞,蠕虫获得被攻击的计算机系统的相应权限,完成后继的复制和传播过程。正是由于漏洞产生原因的复杂性,导致面对蠕虫的攻击防不胜防。
3.造成网络拥塞:蠕虫进行传播的第一步就是找到网络上其它存在漏洞的计算机系统,这需要通过大面积的搜索来完成,搜索动作包括:判断其它计算机是否存在;判断特定应用服务是否存在;判断漏洞是否存在。这不可避免的会产生附加的网络数据流量。即使是不包含破坏系统正常工作的恶意代码的蠕虫,也会因为病毒产生了巨量的网络流量,导致整个网络瘫痪,造成经济损失。
4.反复性:即使清除了蠕虫在文件系统中留下的任何痕迹,如果没有修补计算机系统漏洞,重新接入到网络中的计算机还是会被重新感染。
5.破坏性:从蠕虫的历史发展过程可以看到,越来越多的蠕虫开始包含恶意代码,破坏被攻击的计算机系统,而且造成的经济损失数目越来越大。
冲击波的传播模式为:扫描-攻击-复制。
扫描模块采用的扫描策略是:随机选取某一段 IP 地址,然后对这一地址段上的主机扫描。病毒作者会对扫描策略进行一些改进,比如在 IP 地址段的选择上,可以主要针对当前主机所在的网段扫描,对外网段则随机选择几个小的 IP 地址段进行扫描。对扫描次数进行限制,只进行几次扫描。把扫描分散在不同的时间段进行。
扫描策略设计的原则有三点:尽量减少重复的扫描,使扫描发送的数据包总量减少到最小;保证扫描覆盖到尽量大的范围;处理好扫描的时间分布,使得扫描不要集中在某一时间内发生。
一旦确认漏洞存在后就可以进行相应的攻击步骤,这一部关键的问题是对漏洞的理解和利用。攻击成功后,是获得一个远程主机的 shell,例如对 win2k 系统来说就是 cmd.exe,得到这个 shell 后就拥有了对整个系统的控制权。
复制过程有很多种方法,可以利用系统本身的程序实现,也可以用病毒自代的程序实现。复制过程实际上就是一个文件传输的过程,实现网络文件传输很简单。
由于 RPC/DCOM 漏洞,RPCSS 服务停止响应,操作系统不断报告“PRC 意外中止,系统重新启动”,客户机频繁重启,同时所有网络服务均出现故障,如 IE 浏览器打不开,OUTLOOK 无法使用等。
由于 RPC 服务终止还可能造成其他的一些问题(因为许多功能都依赖于 RPC 服务),如:无法进行复制、粘贴,无法查看网络属性,某些文件夹显示不正常,计算机“服务”管理不正常,无法使用 IE“在新窗口中打开”,无法添加删除程序等等不正常现象。
2003 年 8 月 29 日晚 9 时,全球反病毒监测网率先截获了冲击波病毒的最新变种,并命名为:冲击波 V(Worm.Blaster.E)。据反病毒工程师分析,该病毒变种和前三个变种病毒一样,没有在原始病毒上做大的改动,传染和破坏能力与“冲击波”其它变种相同,这个变种病毒只是重新改变了病毒文件名称和注册表键值,企图躲避杀毒软件的查杀。据分析,新的变种病毒做了如下四处改动:
将病毒体内的字符串改为:I dedicate this particular strain to me ANG3L – hope yer enjoying yerself and dont forget the promise for me B/DAY
而在病毒 ochWorm.Blaster 中为:I just want to say LOVE YOU SAN !! billy gates why do you make this possible ? Stop making money and fix your software !!
将原来的互拆量 ochBILLY 改为 ochSILLY;
将对 ochwindowsupdate.com 进行拒绝服务攻击改为对 ochkimble.org 进行拒绝服务攻击;
将注册表中添加的键值改为 HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRunWindowsAutomation=mslaugh.exe 原为:HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRunWindowsautoupdate=msblast.exe
反病毒工程师判断,这种改动的目的仍然是为了躲避杀毒软件的追杀。该病毒编写者是为了延长病毒的生命力,从而给自己争取到推出病毒新版本的时间。冲击波”病毒共产生了五个病毒体,分别为:Worm.Blaster,Worm.Blaster.B,Worm.Blaster.C,Worm.Blaster.D,Worm.Blaster.E。
该病毒感染系统后,会使计算机产生下列现象:系统资源被大量占用,有时会弹出 RPC 服务终止的对话框,并且系统反复重启,不能收发邮件、不能正常复制文件、无法正常浏览网页,复制粘贴等操作受到严重影响,DNS 和 IIS 服务遭到非法拒绝等。如果在自己的计算机中发现以上全部或部分现象,则很有可能中了冲击波病毒。此时,计算机用户应该采取以下方式检测:
1)检查系统的 system32Wins 目录下是否存在 DLLHOST.EXE 文件(大小为 20K)和 SVCHOST.EXE 文件,(注意:系统目录里也有一个 DLLHOST.EXE 文件,但此为正常文件,大小只有 8KB 左右)如果存在这两个文件说明计算机已经感染了“冲击波杀手”病毒;
2)在任务管理器中查看是否有三个或三个以上 DLLHOST.EXE 的进程,如果有此进程说明计算机已经感染了此病毒。