危险漫步博客
新鲜的“黑客思维”就是从全新的角度看待黑客技术,从更高的层面去思考;专注于黑客精神及技术交流分享的独立博客。
文章2289 浏览18787754

详细解析漏洞4个boom !必读!

自上个月PHPCMS2008 SP3爆出了“企业黄页”的盲注漏洞后,目前程序已经升级到了的SP4,但可惜的是SP4还没公布几天,就有人发现了PHPCMS SP4存在的安全漏洞,而且还不止一个,一下子就被发现了4个漏洞!这4个漏洞分别是下载任意文件漏洞、暴路径漏洞、删除任意文件漏洞以及注入漏洞,本文我们就来详细的了解一下这些漏洞以及利用方法。

一、下载任意文件漏洞

我从官方网站下载了存在漏洞的phpcms sp4_gbk,在虚拟机的PHP环境中把程序安装了起来,访问地址为。

PHPCMS SP4的这四个漏洞都是由Jannock发现的,以下就是Jannock对该漏洞的简单分析,其实不光是在IIs存在该漏洞,在APACHE下也同样存在该漏洞的。存在漏洞的文件为“commment\down.php”,具体的语句就是第12行的“if(preg_match('/\.php$/',$f)|| strpos($f,"\\"))showmessage('地址有误');”,只判断了文件后辍PHP,但没有考虑到在Windows系统中,文件名为“xx.php”(后面多了一个空格)也会被认为是xx.php文件的情况,因此利用这个判断不完全的缺陷,当PHPCMS运行在Windows系统下时,我们就可以下载任意的文件。

下面来看漏洞的利用过程,我们首先需要注册一个用户,我注册了一个用户test,注册成功后点击“会员中心”,在会员中心点击“信息管理”,在“下载”处添加

一个下载。

这里我在“办公软件”中添加了一个下载,点击“发布”按钮后就来到了添加下载的地方,“标题”和“描述”可以随便填写,我填写的都为test,“下载列表”就填写“hackerxfileslinclude/config.inc.php%201”,点击“确定”按钮后就添加了一个下载,添加的下载要等管理员审核通过后别人才能看到,但我们不用等待管理员审核通过就能利用这个漏洞,点击“信息管理”中的“待审”,就看到了我们等待审核的那个下载。

点击“管理”,然后点击“管理操作”中的“预览”,就打开了预览页面,点击“下载歹列表”后面的hackerxfiles,就打开了下载页面,直接点击页面中的“点击下载”按钮后就弹出了下载对话框。,我们可以下载config.inc.php了。

打开下载的config.inc.php,就可以看到PHPCMSSP4的数据库连接信息了。后来我又到PHPCMS的官方演示站点测试了一下,也成功了。在得到数据库的连接密码后,就可以尝试一下是否与PHPCMS SP4的后台管理员密码一样,如果使用的也是相同的密码,那我们就可以登录进入后台拿webshell了(至于在后台如何拿到webshell以前应该有谈及过,大家可以自行去查一查)。

即使数据库连接密码不是后台管理员密码也还是有其它利用方法的,如果mysql服务器允许外部连接,我们就可以连接上去执行查询命令“select * from phpcms_memberwhere userid=l”(表前缀为phpcms_的情况下)来得到后台管理员的用户名和密码,如果密码的MID5值能够破解出来,那么同样可以进入后台来拿webshell。对于密码的MD5值破解不出来的情况,如果权限够的话,我们还可以通过导出文件采得到webshell,导出文件时要用到的网站绝对路径我们可以通过下面的暴路径漏洞来得到。最后在提醒一下大家,我们把“hackerxfiles|include/config.inc.php%201”中的“include/config.inc.php”替换成别的文件就可以实现下载任意文件了。

二、暴路径漏洞

我们来看一下Jannock对这个漏洞的分析,存在漏洞的文件为“Corpandresize/ui.php”。

我们可以看出,网站绝对路径被保存在了cookie中。关于这个漏洞利用,我们同样还是需要先注册一个用户,登录后直接访问,就会出来‘请选择要剪切的图片”的对话框,点击“确定”后会询问是否关闭窗口,我们选择“否”,然后在浏览器的地址栏里输入“javascript:alert(document.cookie)”后回车就可以看到当前的cookie信息了。

其中“tmp=C%3A%2FAppServ%2Fwww%2Fphpcms%2F%2F”中的“%3A”是“:”的URL编码,“%2F”是“/”的URL编码,还原回来就是,现在我们就知道网站的绝对路径是“c:/AppServ/www/phpcms/”了,在傲游浏览器中利用Cookie Editer插件可以更直观的看到当前的cookie。

在得到网站的绝对路径后,如果权限够的话我们就可以通过类似“select Ox3C3F706870206576616C28245F504F535458785D293F3E into DUMPFILE' C:/AppServ/www/phpcms/php.php';“的代码来导出一个webshell,其中Ox3C3 F706870206576616C2 8245F504F535458785D293F3E就是“<?php eval($_POST[x])?>”的十六进制表示形式。

三、SQL注A漏洞

还发现了PHPCMS SP4的一个SQL注入漏洞,对该漏洞相应的分析如下,存在漏洞的文件为“ads\include\ads.class.php”。

可以看出,变量$adsid没有经过处理就直接进人了SQL查询,造成了SQL注入漏洞。给出的漏洞利用方法是注册普通会员帐号,预订一个广告,然后修改adsid的值进行注入,但很惭愧,我不知道具体的要如何修改adsid的值,不会构造注入语句,还希望高手们能够撰文分享一下。

四、删除任意文件漏洞

还发现了PHPCMS SP4存在删除任意文件的漏洞,漏洞的分析如下。

在图片剪切那里先读取cookie中的信息,然后直接删除文件,这就造成了删除任意文件的漏洞。但我在测试时却没有测试成功,可能是我技术不到位的缘故吧。

本文危险漫步给大家介绍了PHPCMS SP4的几个漏洞,我们在google或百度中搜索“Powered by Phpcms ”,后台登录页面显示“PHPCMS SP4”的就是使用了PHPCMS SP4的网站,很可能存在这些漏洞。

相关推荐