Chr*_*ris 5 mysql security code-injection
我首先要注意的是,这是对我自己的数据库的一次教育尝试,以便更好地理解MySQL注入以保护我自己的代码.
我需要弄清楚如何根据以下代码构建MySQL注入的几个示例.这是一个基本的用户登录系统,我接受用户名和密码而没有任何转义
$user = (!empty($_POST['user'])) ? $_POST['user'] : '';
$pass = (!empty($_POST['pass'])) ? $_POST['pass'] : '';
然后,MySQL查询尝试在名为users的表中查找输入的用户名和密码,如下所示:
$res = mysql_query("SELECT * from users where user='{$user}' AND pass='{$pass}'");
这是未转义的输入,我正在尝试将MySQL注入:
我已经尝试了几个来自维基百科的MySQL注入示例,但我猜{}我的查询是在阻止注入,所以我很感激那些对此有信心的人的一些帮助,谢谢大家.
这样的事情应该做:
这将使您的查询看起来像
$res = mysql_query("SELECT * from users where user='foo' -- ' AND pass=''");
" - "表示该行的其余部分已注释掉
这将使您的查询看起来像:
$res = mysql_query("SELECT * from users where user='foo' OR (DROP TABLE users) -- ' AND pass=''");
虽然可能不接受 - 我认为子查询只能SELECT.
mysql_query函数只运行一个查询 - 其他人可以让你这样做:
$res = mysql_query("SELECT * from users where user='foo'; DROP TABLE users -- ' AND pass=''"); 
| 归档时间: | 
 | 
| 查看次数: | 8612 次 | 
| 最近记录: |