EXP表达式存在SQL注入--ThinkPHP3.2.3代码审计分析

漏洞原理

Thinkphp SQL查询:EXP:表达式,支持更复杂的查询情况,
exp查询的条件不会被当成字符串,所以后面的查询条件可以使用任何SQL支持的语法,包括使用函数和字段名称。查询表达式不仅可用于查询条件,也可以用于数据更新。

漏洞利用

$_GET[‘state’]参数未经过安全过滤,然后直接带入到SQL查询语句中

漏洞分析



其中传入数组第一个值为“exp”,则将数组第二个值直接拼接至where子句。