thinkphp-cnvd-2018-24942
# ThinkPHP-未开启强制路由导致RCE
# 1)漏洞信息
漏洞名称 | 受影响组件 | 漏洞类型 | 漏洞编号 |
---|---|---|---|
ThinkPHP未开启强制路由RCE | ThinkPHP (opens new window) | 远程代码执行 | CNVD-2018-24942 |
漏洞简介 |
---|
由于框架对控制器名没有进行足够的检测, 会导致在没有开启强制路由的情况下,存在可能的getshell漏洞 |
参考链接 |
---|
补丁及修复方案 |
---|
# 漏洞环境
# 方案一
使用vulhub (opens new window)搭建漏洞环境
git clone https://github.com/vulhub/vulhub
cd vulhub/thinkphp/5-rce
docker-compose up -d
1
2
3
2
3
启动vulhub环境后,访问8080端口即可看到thinkphp页面

# 方案二
使用vulfocus (opens new window)搭建漏洞环境
docker pull vulfocus/thinkphp-cnvd_2018_24942
docker run -itd -p 80:80 vulfocus/thinkphp-cnvd_2018_24942
1
2
2
启动vulfocus环境后,访问80端口即可看到thinkphp页面

# 漏洞复现
python3 vulcat.py -u <URL> -a thinkphp -v cnvd-2018-24942
# 注意, vulcat-v2.0.0版本及以上, 应使用以下命令
python3 vulcat.py -u <URL> -v cnvd-2018-24942
1
2
3
4
2
3
4

直接访问漏洞URL


vulfocus漏洞环境:


编辑 (opens new window)