前言
主要解释SQL注入中关于Union的知识点
一、Union语法
对于SQL注入而言,我们只需要了解Union基础的语法就行了。简单的来说,Union就是把两张表格进行纵向拼接,形成一张新的表格。
select A,B,C from table Union Select D,E,F from table;
eg:合并学生表和教授表
二、Union注入原理
1.查询表格的列数必须一样
我们在查询进行Union注入时,你是否经常看见:Union select 1;Union select 1,2;Union select 1,2,3;等这样的操作,这就是在尝试推断出数据的有多少列,当不出现报错时,即说明这就是我们需要的列数。
2.得让Union前面的查询为假
我们在正常Union查询的时候,是会把两张表进行合并的,但是我们现在进行sql注入,我们的目的是想显示我们需要的东西,而是显示数据库里的正常数据,这就是需要把Union前面的查询变为假。当Union前面为不存在的表格时,合并的表格只会显示后面表格的数据;我们就可以利用这一点进行显示我们想显示的数据,一般就是设置查询不存在的数据如:id=0等