ThinkPHP是一款运用极广的PHP开发框架。其5.0.23以前的版本中,获取method的方法中没有正确处理方法名,导致攻击者可以调用Request类任意方法并构造利用链,从而导致远程代码执行漏洞。 如上所述,此漏洞是因为Request类中获取method方法中没有正确的处理方法名导致远程命令执行。 使用docker搭建好环境后,进入bash环境 查看/var/www/thinkphp/library/think/Request.php即Request类 因为太多截取含有method关键字的部分发现method函数定义并且可以发现这个函数主要在其他成员函数,因为下面的return 发现没? 引用payload实现远程代码执行 其版本5中,由于没有正确处理控制器名,导致在网站没有开启强制路由的情况下(即默认情况下)可以执行任意方法,从而导致远程命令执行漏洞。 引一篇大佬的文章 https://your-ip:8080/index.php?s=/Index/thinkapp/invokefunction&function=call_user_func_array&vars[0]=phpinfo&vars[1][]=-1ThinkPHP5 5.0.23 远程代码执行漏洞
漏洞分析
每个return都是http的请求方法,说明此方法是用来对请求类型做判断的。
接下来看一下这个类的构造函数,好吧说不上来毕竟不是搞开发的,总之影响漏洞的类就是这个request类,通过一系列的神奇操作,触发request类的param方法覆盖server变量,然后通过input方法实现任意代码执行。漏洞复现
ThinkPHP5 5.0.22/5.1.29 远程代码执行漏洞
漏洞分析
https://www.cnblogs.com/st404/p/10245844.html漏洞复现
相关文章
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox网页视频下载器 下载地址: ImovieBox网页视频下载器-最新版本下载
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算