发布日期:2004-12-22
影响系统:phpBB 2.0.10以前的所有版本
蠕虫信息:
Santy蠕虫是一种利用phpBB论坛漏洞进行传播的蠕虫,phpBB是一种免费的公开源码的论坛系统,它的viewtopic.php文件中对highlight参数值在解码时没有清理干净,可以被注入恶意构造的脚本。santy蠕虫利用了这个漏洞,从2004年12月21日开始,对从搜索引擎google得到的查询结果中的站点进行攻击,并迅速传播。据统计全球有大约600万网站使phpBB,截止到12月22日,google可 以统计到被santy蠕虫破坏的网站已经达到26000多。被攻击的网站中以.htm .php .asp .shtm .jsp .phtm为后缀的文件都被如下内容覆盖,从而导致整个站点都被破坏:
This site is defaced!!!
This site is defaced!!!
NeverEverNoSanity WebWorm generation }
. $generation .q{.
页面显示为:
This site is defaced!!!
NeverEverNoSanity WebWorm generation X
其中X 为被感染时的代数
详细信息:
蠕虫一旦感染主机后,将执行一下操作:
1、检查当前已经感染到第几代,如果超过3代,则破坏整个站点;
2、将蠕虫代码读入内存,删除文件系统中的自身文件;
3、测试http://www.google.com/advanced_search是否可以连接,如不可连接则退出;
4、修改传播代数值,准备继续传播;
5、构造攻击代码;
6、检测是否存在stop.it文件,如果存在则退出;
7、访问搜索引擎google,获取返回结果,构造攻击目标列表;
8、对目标列表中的攻击目标依次发送攻击代码;
9、启动被传送到攻击目标的攻击代码
解决办法:
1、尽快将phpBB版本升级到phpBB 2.0.11
http://sourceforge.net/project/showfiles.php?group_id=7885
2、使用入侵检测系统监测是否存在攻击
snort检测规则:
alert tcp any any -> $HOME_NET $HTTP_PORTS (msg: "phpBB highlight exploit attempt";
content: "&highlight=%2527%252Esystem(";)
alert tcp any any -> any 80 (msg: "Possible Santy.A worm searching google for targets";
content: "&q=allinurl%3A+%22viewtopic.php%22+%22";)
3、同样你也可以采用以下方式来降低论坛被攻击的风险
禁用perl;
在运行phpBB的主机上屏蔽www.google.com;
在viewtopic.php文件所在目录下建立stop.it文件;
参考资源:
HKCERT, http://www.hkcert.org/salert/english/s041122_phpbb_multivuln.html
CERT/CC, http://www.us-cert.gov/cas/techalerts/TA04-356A.html
Symantec, http://securityresponse.symantec.com/avcenter/venc/data/perl.santy.html
F-Secure, http://www.europe.f-secure.com/v-descs/santy_a.shtml
McAfee, http://us.mcafee.com/virusInfo/default.asp?id=description&virus_k=130471
TrendMicro, http://www.trendmicro.com/vinfo/virusencyclo/default5.asp?
VName=WORM_SANTY.A
ZDNet, http://news.zdnet.com/2100-1009_22-5500265.html?tag=zdnn.alert
phpBB, http://www.phpbb.com/