N9-SQL注入(union注入)

今天猴子君要向大家介绍的是SQL注入的union章节。
首先打开pikachu渗透测试平台。
找到sql字符型注入的章节。
N9-SQL注入(union注入)_第1张图片
union语句为数据库联合语句,用法如下:
SELECT 字段1,字段2 from 表名 where 条件 union SELECT 字段1,字段2 from 表名 where 条件
而union联合字段后面的查询字段的个数要与前面的字段个数相同,所以我们可以使用 order by n(n为数字)。来用第n个字段进行排序,如果有该字段,则可以排序。一般我们使用折半查找的方式进行排序。
输入kobe’ order by 10#,发现返回10不存在
N9-SQL注入(union注入)_第2张图片
N9-SQL注入(union注入)_第3张图片
一顿排序操作之后,发现字段个数为2,
N9-SQL注入(union注入)_第4张图片
所以,我们可以在union的后半部分查询两个字段,这里猴子君查找的是数据库和当前用户使用权限(database()、user())。
这样,我们就可以创造闭合语句了。将SELECT 字段1,字段2 from 表名 where username= ?;(?的部分替换为上面的union语句),就是这样:
SELECT 字段1,字段2 from 表名 where username= ’ union SELECT 字段1,字段2 from 表名 where 条件#’;
我们输入的就是 kobe’ union select database(),user() #
这样我们就可以看到返回了数据库的名称和当前用户的权限。
N9-SQL注入(union注入)_第5张图片
这样,一次union注入就做完啦!

你可能感兴趣的:(Pikachu)