6.4 病毒实例剖析

6.4.1 蠕虫病毒定义

蠕虫病毒的定义
蠕虫病毒和一般的病毒有着很大的区别。对于蠕虫,现在还没有一个成套的理论体系,一般认为,蠕虫是一种通过网络传播的恶性病毒,它具有病毒的一些共性,如传播性、隐蔽性、破坏性等。但也有自己的一些特征,如不利用文件寄生(有的只存在于内存中),对网络造成拒绝服务,以及和黑客技术相结合等。蠕虫病毒在造成的破坏性上超过了普通病毒。

根据使用情况,我们将蠕虫分为两类:一类是面向企业用户和局域网的病毒,这种病毒利用系统漏洞,主动进行攻击,可以造成网络瘫痪的后果。以“红色代码”“尼姆达”“sql蠕虫王”等为代表。另一种针对个人用户,通过网络(主要是电子邮件、恶意网页)进行传播,以“爱虫”“求职信”等为代表。
第一类有很大的攻击性,而且爆发比较突然,这种查杀不是很困难。第二类病毒的传播方式比较复杂多样,少数利用了微软的应用程序漏洞,更多的是利用社会工程学欺骗和诱导。

蠕虫病毒与一般病毒的异同
蠕虫也是一种病毒,因此具有病毒的共同特征。一般的病毒需要寄生,它可以通过自身指令,将自己的指令代码写道其他程序体内,而被感染的文件称为“宿主”。蠕虫一般不采用感染PE文件,而是通过自身复制在互联网环境下进行传播。
病毒的传染能力主要针对计算机内部的文件系统而言,而蠕虫病毒的传染目标是互联网所有的计算机。而且蠕虫病毒可以借助发达的网络几小时内传遍全球,令人们手足无措。 

 
普通病毒
蠕虫病毒
存在形式
寄存文件
独立程序
传染机制
宿主程序运行
主动攻击
传染目标
本地文件
网络计算机

蠕虫的破坏和发展趋势
1988年,一个由美国Cornell大学研究生莫里斯编写的蠕虫病毒蔓延,造成了数千台计算机停机,蠕虫病毒开始现身网络。后来,Nimda,CodeRed病毒疯狂的时候,造成了几十亿美元的损失。2003年初,Sql蠕虫王袭击全球,造成了网络大规模瘫痪。

病毒名称
持续时间
造成损失
美丽杀手
1999年3月
政府部门和一些大公司紧急关闭了网络服务器,经济损失超过12亿美元
爱虫病毒
2000年5月至今
众多用户电脑被感染,损失超过100亿美元
红色代码
2001年7月
网路瘫痪,直接经济损失超过26亿美元
求职信
2001年12月至今
大量病毒邮件阻塞服务器,损失达数百亿美元
SQL蠕虫王
2003年1月
网络大面积瘫痪,银行ATM运作中断,直接经济损失超过26亿美元
(蠕虫病毒对网络产生拥堵作用,造成了巨大损失)
蠕虫发作的一些特点和发展趋势:
1.利用操作系统和应用程序的漏洞主动传播;
2.传播方式多样。如Nimda和求职信等,可以利用的传播途径包括文件、电子邮件、Web服务器、网络共享等;
3.病毒制作技术新。
4.与黑客技术相结合。
 
6.4.2 网络蠕虫病毒分析和防范
 
蠕虫病毒和普通病毒不同的一个特征是:蠕虫病毒能够利用漏洞,这里说的漏洞分为两种:软件上的缺陷和人为上的缺陷。
 
利用系统漏洞的恶性蠕虫病毒分析
这种病毒以 “红色代码”、“尼姆达”、“sql蠕虫”为代表,其共同特征是利用某个漏洞进行攻击。由于网络山普遍存在这种漏洞,而且攻击对象为服务器,所以造成了网络严重阻塞。
 
SQL蠕虫
2003年1月26日爆发的SQL蠕虫为例,爆发数小时内,SQL蠕虫就席卷了全球网络,造出呢光网络堵塞。亚种中,以韩国受影响最为严重,两大网络供应商系统全部瘫痪。更为严重的是,许多银行自动取款机无法正常工作。
微软在 2002年7月就公布了一个安全公告,但当sql蠕虫爆发时,仍有大量的主机没有安装最新补丁,从而被蠕虫利用。蠕虫通过376字节的恶意代码,远程获得对方主机权限。该蠕虫生成一个随机IP,,然后将自身代码发送到1434端口,该蠕虫传播速度极快,使用广播包发送自身代码,每次可以攻击一个子网。该过程为死循环,发包密度仅和网络带宽和机器性能有关。该蠕虫本身没有任何恶意行为,也不在磁盘写文件,仅驻留在内存中,重启即可清除,不过还能再次感染。由于发送大量数据包占用网络资源,形成UDP Flood,网络性能会下降。一个百兆网络只要有一两台计算机感染,就会造成网络瘫痪或阻塞。
 
红色代码( Code Red)
该蠕虫感染运行 Microsoft Index Server 2.0的系统,或是在Windows 2k的IIS中启动了Indexing Service(索引服务)的系统。利用缓冲区溢出漏洞进行传播,只驻留内存,不在磁盘中写入文件。
该蠕虫通过 TCP 80端口传播,利用上述漏洞,一旦感染系统,就会检测磁盘中是否存在C:/notworm,如果存在,则停止感染其他主机。该蠕虫会在Web页中写入以下文字:
Welcome to http://www.worm.com! Hacked by Chinese!
 
“求职信”病毒 /蠕虫行为分析
该程序具有罕见的双程序结构,分为蠕虫部分(网络传播)和病毒部分(感染文件、破坏文件)。二者在代码上是独立的两部分。
求职信执行的蠕虫部分代码,具体操作如下:
1.把自身拷贝到 /winnt/system32/krnl32.exe,设置隐藏、系统、只读属性。
2.把 /winnt/system32/krnl32.exe注册为“Krnl32”服务,并自动运行。
3.在 Internet临时文件夹中读取所有htm、html文件并从中提取email地址,邮件主题随机。内容为空,但是有一段注释。
4.搜索网上邻居,发现可写的共享目录就随机生成一个文件,并将病毒自身加密复制过去。文件名生成规则如下:
·第一部分随机名字,最后是一个“.”
·第二部分在htm、doc、jpg、bmp、xls、cpp、html、mpg、mpeg中任选一个
·第三部分是 exe作为扩展名
5.krnl32.exe每启动一次就会在目录 %temp%和/winnt/temp/中创建一个自身副本,文件名是k字开头的。设置病毒部分在下次开机时运行
6.改变部分编码后拷贝至 /winnt/system32/wqk.dll,设置系统、只读、隐藏属性。
7.在注册表中写入以下键值:
[HKLM/software/Microsoft/windows nt/CurrentVersion/Windows]
“AppInit_DLLs”=“Wqk.dll”
wqk.dll注册为系统启动必须加载的模块,下次开机时,病毒以动态链接库的形式被加载。下次开机时,wqk.dll被加载,wantjob以病毒方式运行。
1)遍历硬盘,寻找pe格式文件,感染之。
2)检查本地时间,如果时间为1月13日,马上启动26个破坏线程,用内存中的数据覆盖硬盘上的所有文件;
3)wqk.dll每启动一次就会在system32中创建一个自身副本
 
Wantjob有自我保护措施
1)检查进程,结束杀毒软件进程;
2)不断向注册表中写入键值,即是手工去掉,也会被马上写入
[HKLM/software/Microsoft/windows nt/CurrentVersion/Windows]
AppInit_DLLs”=“Wqk.dll”
 
Wantjob在 9x系统下,表现有所不同。
1)9x没有“服务”,所以wantjob不注册“Krnl32”服务,而是在注册表[HKLM/Software/Microsoft/Windows/CurrentVersion/Run]写入“krnl32”=“c:/windows/system/krnl32.exe”;
2)没有wqk.dll,而是wqk.exe,也在注册表Run写入键值。
 
解决方案:
9x下,可以进入纯Dos杀毒。在2k下:
1.结束所有 krnl32.exe进程;
2.删除 /system32/krnl32.exe及其所有副本;
3.删除或禁用 drnl32服务;
4.在注册表 [HKLM/Software/Microsoft/Windows/CurrentVersion/Run]中添加以下键值:
@=”cmd /c “attrib –s –h –r /winnt/system32/wqk.dll”&”del /winnt/system32/wqk.dll””
5.正常启动系统,删除所有相关注册表信息。
 
Nimda病毒分析
该病毒通过 email传播,利用一个已知的漏洞(MIME类型),在存在漏洞的系统上,读取HTML格式的邮件,就会感染病毒,通过运行携带的二进制文件,也会感染。
Nimda发送的邮件,主题长度大多会多于 80 words。附带的二进制文件虽然CRC值不同,但是长度几乎都是57344B。
感染 Nimda的机器会不断向Windows地址簿中的所有地址发送带毒邮件。同样,会扫描有漏洞的IIS服务器。被感染的机器会发送一份Nimda病毒的副本到有漏洞的服务器,一旦在该服务器上运行,就会遍历目录(包括可写入的共享),留下一个名为“Readme.eml”的自身拷贝,并感染所有Web内容的文件,添加一段JS代码,功能是执行Readme.eml。
在没有打补丁的 IIS服务器上,入侵者可以在Local System权限下执行任何命令。被感染的机器具有极高的风险并会去攻击其他Internet站点。网络上感染的机器增多后,Nimda的高速扫描会造成带宽耗尽而拒绝服务。
 
企业防范蠕虫病毒措施
企业部署反病毒系统,需要考虑对病毒的查杀能力、监控能力、新病毒的反应能力等几个问题,而企业防毒的一个重要方面是管理和策略。
1.加强管理水平,提高安全意识。
2.建立病毒检测系统,能够在第一时间检测到网络异常和病毒攻击。
3.建立应急响应系统,将风险降低到最小。
4.建立灾难备份系统。
5.对局域网而言,可以采用以下一些主要手段:( 1)在因特网入口处安装防火墙或杀毒产品;(2)对邮件服务器进行监控,防止病毒邮件传播;(3)对局域网用户进行安全培训;(4)建立局域网内部的升级系统,包括度操作系统升级、常用软件升级、各种杀毒软件病毒库等。
 
对个人用户产生直接威胁的蠕虫病毒
对个人而言,产生威胁的一般是 email病毒或恶意网页等。
对于通过 email传播的病毒,一般都采用社会工程学(Social Engineering)即以各种欺骗手段诱惑用户,进行传播。
恶意网页是一段嵌入在网页中的代码,在用户不知情的情况下打开含有病毒的网页时,病毒就会发作。对于恶意网页,通常采取 VBS或者JS编程的形式,简单,使用较为广泛。
 
个人用户对蠕虫病毒的防范措施
网络蠕虫病毒对个人的攻击主要还是通过社会工程学,而不是系统漏洞,所以防范注意:
1.购买合适的杀毒软件。
2.经常升级病毒库。
3.提高防杀病毒意识。
4.不要随便查看陌生邮件。
 
 
6.4.3 Linux系统的病毒介绍
Lion病毒
Linux.Lion是一个危险的 Linux蠕虫,改变用户的电脑 ,偷取用户密码,降低用户电脑的安全防范,不会在Windows中运行。

你可能感兴趣的:(NCSE学习笔记,第1册)