SQLi运行错误的查询

时间:2017-05-30 08:09:29

标签: php sql-injection

我建立了一个易受SQLi攻击的网站。 但是当我使用SQLi '--运行GET请求时,我得到了错误的查询输出。有人可以帮我这个吗?

这是我的SQLi

enter image description here

这就是SQL运行查询的方式。

enter image description here

SQL查询假设不同。应该是:SELECT * FROM product WHERE id LIKE '%',它应该输出product表中的所有数据。

代码段

enter image description here

1 个答案:

答案 0 :(得分:2)

这是正确的,并且在给定输入的情况下,它正在按照你所说的去做。

GET请求值为'--,用于替换SQL查询字符串中的变量$test。但它不会删除SQL查询字符串中 $test变量之后的内容。

让我用一些颜色编码向您展示:

  

SELECT * FROM product WHERE id LIKE'%$test%'

     

SELECT * FROM product WHERE id LIKE'%'--%'

字符--构成SQL注释的开头,因此在SQL注入发生后会忽略其后的任何内容。查询的唯一功能部分是:

  

SELECT * FROM product WHERE id LIKE'%'