2622604636 发表于 2011-12-7 13:10:44

codeigniter数据检索的严重安全问题

我发现一个现象

id:主键、自增类型、无符号


$this->db->select('*')->where('id',$user_id);

存在一个id:155

但是,如果输入155a或155b甚至155asdfasfd

都可以检索出155的数据

谁能解释这个现象

zhouli520 发表于 2011-12-7 13:44:00

你echo last_query()
可以看到where 条件是 id='$user_id'这里条件后面所以值都加了引号的,所以在sql语句那认定是字符串形式了,mysql查询的是模糊匹配,如果你手动写sql语句 id=$user_id那么就不会有这个问题了.

2622604636 发表于 2011-12-7 14:44:06

非常感谢

hansonfox 发表于 2011-12-7 20:37:58

啊~ 学习了

justdoit 发表于 2012-3-21 23:00:14

不错,又学了点知识。
页: [1]
查看完整版本: codeigniter数据检索的严重安全问题