一、漏洞位置
程序自带的PHP的php_xmlrpc.dll模块中有隐藏后门,受影响的版本有phpstudy2016(php5.2/5.4)、phpstudy2018(php5.2/5.4)等版本。
这里我们用phpstudy2018版本的来验证后门位置及作用。
二、步骤
Step1:切换php的版本到5.2或者5.4,在phpstudy的根目录下找到phpStudy\PHPTutorial\php\php-5.2.17\ext\php_xmlrpc.dll,使用记事本打开该文件,搜索eval。如下图
Step2:使用BurpSuite去拦包,修改请求包,其中Accept_Encoding:gzip,deflate 的逗号后面的空格一定要删掉,然后添加一项:Accept_Charset,规定服务器处理表单数据所接受的数据,恶意代码 “system('net user')“用Base64转码,将结果放在后面。
Step3:提交请求包,查看响应包
可以发现,在Accept-Charset中的命令在目标机上被执行,并返回出结果。
三、修复方法
- 将php5.2和php5.3中的php_xmlrpc文件替换为官网发布的。
- 使用“phpstudy'安全自检修复程序”修复phpstudy
来源:oschina
链接:https://my.oschina.net/u/4258221/blog/3381567