第五关
第五关上来后发现没有回显位置

但是可以发现存在注入点,这里可以闭合引号,随后通过查询列数发现这里也是3列
这道题使用的是报错注入
何为报错注入:
报错注入就是通过人为的引起数据库的报错,但是数据库在报错的同时会将查询的结果也呈现在报错中,我在这里介绍一下报错注入以及原理
这是网上使用最广泛的一句报错注入语句:
select count(*),(floor(rand(0)2))x from information_schema.tables group by x;
那么必须是要按这个句子来执行吗,或者必须要这些句子吗?
通过查找很多网站的资料,我总结出:
group by,rand(),floor()三个函数是必须存在的,缺一不可,并且rand(),rand(0)两个句子还是有一些区别的,其中rand()在两条数据以上随即报错,rand(0)在三条数据以上必报错
使用语句
union select 1,count(),concat(0x3a,0x3a,(注入语句),0x3a,0x3a,floor(rand()*2))a from information_schema.columns group by a–+


这里我发现用group_concat()会爆出的库名不全,就是用limit语句逐个爆出

第五关就结束啦
文章转载自JNMCSEC,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




