如果不过滤的话,这条语句是可以直接执行的,看这里面有个 union 关键字,这个关键字的意思是
union:联合的意思,即把两次或多次查询结果合并起来。
要求:两次查询的列数必须一致
推荐:列的类型可以不一样,但推荐查询的每一列,想对应的类型以一样
比如说你查用户信息表,如
1
|
select
id,username
from
user
;
|
这个时候你得到的结果就是
id,username
1,张三
2,李四
......
如果被注入成功的话,像这样
1
|
select
id,username
from
user
union
select
id,
password
from
user
;
|
这是就会得到这样的数据
id,username
1,张三
2,李四
1,123456
2,123456789
//或者密码是加密存储的话如
1,sdfgsdgdfghsdfgsdfgsg
2, asdfasfasfdasfasdfasfasf
就是会在username的地方显示密码,这就是union 的作用,
比如说在文章列表页,被注入成功了,那基本上啥都能出来了