0x00:漏洞描述
2020年1月10日,ThinkPHP团队发布一个补丁更新,修复了一处由不安全的SessionId导致的任意文件操作漏洞.该漏洞允许攻击者在目标环境启用session的条件下创建任意文件以及删除任意文件...,在特定情况下还可以getshell.
0x01:影响范围
ThinkPHP6.0.0-6.0.1
0x02:环境准备
1、/tp60/app/middleware.php 文件开启session...sid =$_POST['key'];
session('zeo',$sid);
return 666;
}
意思是获取一个key设置写入session中
注:使用thinkphp6...最好使用高版本 的php
0x03:漏洞分析
首先这个洞,理解是sessionid为进行校验,可以导致传入任意字符,例如xxx.php.而且一般来说sessionid会作为文件名创建对应的文件保存....这是第一步我们的已经实现文件可控,如果session文件再往里面写东西要是可控的话,这样不就可以getshell了,所以我构造了上面的控制器.