0x01 前言
在90看到一个师傅写得文章,进入后台然后一个神奇操作就拿到shell,没看懂怎么做到得,后来百度发现是 thinkphp 缓存getshell,所以说我接触得太迟了啊,这么早得知识现在才知道。
0x02 复现
大致得逻辑是 thinkphp把你在后台得操作写入缓存文件,但是根本没有一点得过滤等,这样你就可以写入一句话,然后去访问缓存文件即可。
影响范围: 3.23 - 5.010
环境: phpstudy+xyhcms
环境搭建后在后台设置资料,写入一句话
然后就去访问文件并传入命令
蚁剑连一连
其他地方存在吗?肯定是存在得,只是需要我们去寻找文件的路径
危险得地方是每次后台设置,记录缓存文件名不会变,这就导致了找到目标服务器得shell文件得可行性。
再次修改后台,
再次查看刚刚得缓存文件
可以看到,同一个目录,同一个文件名,这里有记录了我们写入得字符串,只不过是序历化过后得字符串。
0x03 总结
也尝试复现 jymusic那套cms,成功写入但是由于目录不可访问导致失败。
虽然这个getshell得点得要求很多,但是多学一点姿势总是没错得。
参考文章: