为什么我不能使用mysql和php进行sql注入测试
|
我试图检查一个网站是否存在sql注入攻击,并惊讶地发现阻止它不是非常简单,因为下面是简单的代码。
$sql=\"select * from user_acount where login_id=\'\".$username.\"\' and password=\'\".$password.\"\' and status=\'1\' \";
我不能做任何SQL注入来测试它。我写了以下
第一次尝试检查SQL注入
Login: admin\'--
Password:\'i typed nothing here \'
结果密码错误,无法登录。
第二名:
Login: admin or 1=1 --\'
Password:\'\'
结果密码错误,无法登录。
第三名:
Login: admin\' or 1=1
Password:\'\'
第四名:
登录名:admin或1 = 1 \'-
密码:\'\'
结果密码错误,无法登录。
谁能解释一下阻止我的原因吗?我没有使用准备好的语句,也没有使用任何过滤器类,也没有real_escape_string?
没有找到相关结果
已邀请:
5 个回复
骂陋冠
,因此查询如下:
已启用“ 7”,导致查询如下:
即使关闭了魔术引号,最后一个查询也将始终失败:
由于字符串中的“ 10”个注释不起作用,因此查询解释如下:
如您所见,这将导致ѭ12之后的语法错误
才脊烽馈低
或相关名称而不是
)。 您的程序中可能存在一个错误,该错误会阻止将输入“ 15”存储在“ 14”中(例如,表单元素名称与变量名称不匹配)。
填盖
香腔弥胯瓤
方法,但是我认为
设置为true。 当magic_quotes启用时,所有\' (单引号),\“(双引号),\\ (反斜杠)和NUL \ 自动反斜杠。 运行时配置-magic_quotes_gpc
济畦刨
还要检查魔术引号是否已打开