【问题标题】:Double Hyphen/Dash in SQL-Injection. What are they used for?SQL 注入中的双连字符/破折号。它们是用来做什么的?
【发布时间】:2015-09-26 02:41:34
【问题描述】:

我目前正在学习 SQL 注入的工作原理。在许多教学网站上都有示例,例如

SELECT fieldlist
FROM table
WHERE field = 'x' AND email IS NULL; --';

在“字段”字段中,要检查的内容来自文本字段或来自网站的类似内容。在这种情况下,用户输入是x' AND email IS NULL; -- --有什么用??

我看到了一些类似的例子,但没有解释。我错过了一些基本的东西吗?

【问题讨论】:

    标签: sql sql-injection


    【解决方案1】:

    哦,没关系。 -- 用于对查询的其余部分进行注释...

    【讨论】:

    • 特别是注释掉原始SQL命令文本中的'(和其余部分);这样查询仍然有效 - 尽管这不是严格要求的。例如。 WHERE field = 'x' AND email IS NULL or '' = ''; 也是有效的
    • 注释掉剩余的查询真的很重要吗?由于这两种变体都是有效的,带有注释的变体看起来更清晰。
    猜你喜欢
    • 2021-04-15
    • 2011-08-28
    • 1970-01-01
    • 2021-05-29
    • 1970-01-01
    • 2018-11-20
    • 2020-04-10
    • 2019-12-03
    • 1970-01-01
    相关资源
    最近更新 更多