ThinkPHP漏洞复现
文章平均质量分 86
Arnoldqqq
这个作者很懒,什么都没留下…
展开
-
ThinkPHP5 Request类method任意方法调用RCE
此时的调用链如下,由array_walk_recursive调用filterValue函数,完成命令执行。从上面可以看到,filter变量清除在module分支中完成的,通过进入其他进行绕过分支。此时的触发点位于记录路由和请求信息的部分,这也是为什么需要开启debug选项。5.0.13版本之前无需开启debug就能rce,之前的版本中下图代码不会在。中重新再设置一次默认filter,这就会覆盖传入的恶意filter类属性。之前的版本仅在路由调度之前进行设置filter,的键名同名的类属性赋值为。原创 2023-01-24 17:03:51 · 1469 阅读 · 0 评论 -
ThinkPHP5.x未开启强制路由(s参数)RCE
官方公告:https://blog.thinkphp.cn/869075由于框架对控制器名没有进行足够的检测会导致在没有开启强制路由的情况下可能的getshell漏洞,受影响的版本包括5.0和5.1版本。原创 2023-01-14 19:21:10 · 1100 阅读 · 0 评论 -
ThinkPHP多语言文件包含RCE(QVD-2022-46174)
ThinkPHP6新版本补丁\think\middleware\LoadLangPack::detect`中增加了对url、Header、Cookie中设置语言的合法性检查。查看官方文档关于多语言的解释可见:会首先检查请求的URL或者Cookie中是否包含语言变量。在Docker任意版本镜像中,pcel/pear都会被默认安装,安装的路径在。需开启多语言选项,以thinkPHP6版本为例。方法会被自动加载(中间件的入口执行方法)在detect方法中设置语言之后进入。进行语言切换,路径直接拼接而成。原创 2023-01-10 23:43:18 · 2384 阅读 · 0 评论