YouYaX_V5.47 YouYa.php param 参数 SQL 注入

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

问题出现在ORG/YouYa.php文件中。 第356行: ``` public function find($table, $ext = "string", $param) { //在 param 中寻找与给定的正则表达式 pattern 所匹配的子串 if (preg_match_all("/=/", $param, $tmp)) { $sql = "select * from " . $table . " where " . $param; //echo 'x'.$sql; } else { $param = "id=$param"; $sql = "select * from " . $table . " where " . $param; //echo 'y'.$sql; } $result = mysql_query($sql); $num = mysql_num_rows($result); if ($num <= 0) { return false; } else { $arr = mysql_fetch_array($result); switch ($ext) { case "number": foreach ($arr as $k => $v) { if (is_string($k)) { unset($arr[$k]); } } break; case "string": foreach ($arr as $k => $v) { if (is_numeric($k)) { unset($arr[$k]); } } break; } return $arr; } } ``` 这里对传入的param参数没有进行过滤,导致存在SQL注入危险。 随便找一处调用该函数的地方,文件Lib/ListAction.php,第165行,index方法内 ``` if(isset($_COOKIE['youyax_data']) && isset($_COOKIE['youyax_user']) && isset($_COOKIE['youyax_bz'])){ //echo $_COOKIE['youyax_user']; if($this->find(C('db_prefix') . "user", 'string', "user='" ....

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