我设置了一个示例服务器来了解有关 SQL 注入(inject)的更多信息。 我在 http://sechow.com/bricks/docs/content-page-3.html 上找到了说明 其中包含以下示例:
POST Data: username=tom' order by 1 -- +&submit=Submit
SQL Query: SELECT * FROM users WHERE name='harry' ORDER BY 1 -- +'
The page displays the content without any issues and there are no error messages.
查询语句末尾的“--+”有什么作用?
提前谢谢您!
最佳答案
注释其余代码。注入(inject)部分是 ORDER BY 1
想象你的代码是
WHERE login = 'tom' and password 'i dont know'
将更改为
WHERE login = 'harry' ORDER BY 1 -- +and password 'i dont know'
编辑
我刚刚读了这个例子。 + '
是关闭字符串
看看结果在 2 之后有一个 '
吗?
POST Data: username=tom' and 1='2&submit=Submit
SQL Query: SELECT * FROM users WHERE name='harry' AND 1='2'
您的其他版本将是
POST Data: username=tom' order by 1 -- +&submit=Submit
SQL Query: SELECT * FROM users WHERE name='harry' ORDER BY 1 -- +'
SELECT * FROM users
WHERE name='harry'
ORDER BY 1 -- + ''
关于php - ' -- +'的SQL注入(inject)函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33760775/