精讯CMS SQL注入(通杀)

- AV AC AU C I A
发布: 2025-04-13
修订: 2025-04-13

### 简要描述: 底层模型解析出错,导致大面积注入。 这是真的注入,真的能注出数据的。 无视新版添加的webscan.class.php ### 详细说明: 找注入,上来就看sql语句是怎么处理的。 jxcms的model调用数据库操作无论是 ->where ->find 都会调用/jxcms/lib/core/db.class.php文件中的checkOneWhere函数进行组装与过滤。 ``` private function checkOneWhere($str) { $tmp = preg_replace('/(["|\']).*?\\1/s', '', $str); $tmp = strtoupper($tmp); if (strstr($tmp, ' BETWEEN ')) $tmp = preg_replace('/ AND /', '', $tmp, 1); // 不是单个条件直接返回 if (strstr($tmp, ' AND ') || strstr($tmp, ' OR ') || strstr($tmp, ' XOR ')) return $str; //主要是这里,发现AND OR XOR就会直接返回,而不会进过后面的parseValue()函数 // 规范化IN $tmp = strtok($str, '"\''); if (stristr($tmp, ' IN(')) { $tmp = preg_replace('/ IN\(/i', ' IN (', $tmp, 1); $str = preg_replace('/ IN\(/i', ' IN (', $str, 1); } foreach(array('!=', '>=', '<=', '=', '>', '<', ' NOT IN ', ' IN ', ' NOT LIKE ', ' LIKE ', ' BETWEEN ') as $comp) { if (stristr($tmp, $comp)) { $t = explode($comp, $str, 2); $field = $this -> addSpecialChar($t[0]); $value = trim($t[1]); if (is_string($value)) { $first =...

0%
暂无可用Exp或PoC
当前有0条受影响产品信息