SQL Inject测试时,在查询号后面加一个"'`"是什么原理?

问题描述 投票:0回答:1

有一种SQL注入方式是这样的:在查询号后面加一个 ' 后的查询号码参数。

http://www.demo.com/cates?id=1'

但为什么呢,有什么理论依据呢?


EDIT-01

我试着用 ' 但那里只有停止和等待更多的指示,没有错误报告。

mysql> select * from ask_user_tags where id=1';
    '> 
    '> 
    '> Ctrl-C -- exit!
Aborted

为什么 ' 可以判断吗?

sql sql-injection
1个回答
0
投票

让我们来看看一个例子。SELECT * FROM users WHERE username = '$username'; 如果没有'在$username,SQL有一个语法错误。但如果给定的值是';DELETE FROM users; -- 没有语法错误,查询也能运行。

© www.soinside.com 2019 - 2024. All rights reserved.