admin

#在sql中是什么意思?

sql

有谁知道OR 1#在mysql注入的上下文中是什么意思?


阅读 267

收藏
2021-05-10

共1个答案

admin

它是MySQL的行注释定界符版本。在标准SQL中,行注释定界符为--

-- This is a standard SQL comment.
# This is a MySQL comment.

因此,在SQL注入的情况下,如果攻击者知道您正在使用MySQL,他可能会使用它突然终止恶意SQL语句,从而导致MySQL忽略后面的内容#并仅执行它之前的内容。但是,这仅对单行SQL语句有效。这是一个例子:

输入:

用户名:fake' OR 1#
密码:pass

结果SQL:

SELECT * FROM users WHERE username = 'fake' OR 1#' AND password = 'pass'

这样执行,返回 每一行

SELECT * FROM users WHERE username = 'fake' OR 1
2021-05-10