黄舟2017-04-17 16:25:38
可注入的sql:
$id=$_REQUEST['id'];
$name=$_REQUEST['name'];
select * from Members where id=$id;
select * from Members where id='".$id."'";
select * from Members where name='".$name."'";
不可填充:
select *从成员中,其中 id='".intval($id)."'";
从成员中选择 *,其中 name=".sql_escape($name);
PHP中文网2017-04-17 16:25:38
使用JavaEE的PreparedStatement接口可以很方便的防止SQL注入,各个DataBase厂家的驱动都实现的不错。Druid这个连接池也有帮你过滤SQL,防止注入。jenkins可以配合一些插件,比如findBugs来查找有可能的SQL注入行为。