有评论时,MySql Query不会运行

时间:2017-03-15 11:53:16

标签: php mysql sql database sql-injection

我试图通过将SQL代码插入输入空间来模拟我自己的数据库上的SQL注入攻击。

我的SQL代码是:

SELECT * FROM Users 
WHERE username = '...' 
AND password = '...';

其中......是输入。

我正在尝试使用以下输入来选择输出为1的每个用户和LIMIT。

以下是用户名输入:

' OR ''='

这应该获取所有用户名。

这是密码输入:

' OR ''='' LIMIT 1; -- 

这应首先获取所有密码,然后将输出限制为仅1行,然后评论最终';

因此执行的代码应如下所示:

SELECT * FROM Users 
WHERE username = '' OR ''='' 
AND password = '' OR ''='' LIMIT 1; -- ';

由于某种原因,这不起作用。我正在使用SequelPro,它告诉我它正在运行2个查询而不输出任何内容。第二个查询为-- ';

但是,如果我删除了最后一个部分并且只运行到第一个分号,它就可以运行并从数据库中检索单个用户。

发生了什么事?

1 个答案:

答案 0 :(得分:0)

你的查询没问题,你遇到的问题来自SequelPro,解析器看起来很生硬,对另一个查询发表评论。

为避免这种混淆,最好从伪造输入中取出尾随分号