sqli-labs(十六)(order by注入)

第四十六关:

http://www.bubuko.com/infodetail-2481914.html 这有篇文章讲得还不错可以看下

这关是order by后面的一个注入,用报错注入和盲注都是可以的

先看源码吧

可以看到是order by后面存在注入漏洞。

输入?sort=1'  页面报错,可以使用报错注入

后面的流程和之前报错注入的流程没什么区别了

?sort=1 and extractvalue(1,concat(0x7e,user())) --+

也可以使用updatexml()

这里顺便把盲注的流程也说下吧

1.布尔型的盲注

输入?sort=rand(true)--+ 与?sort=rand(false)--+ 页面显示不一样,这是因为true=1  false=0

然后就是输入?sort=rand(ascii(substr((user()),1,1))>64)--+

页面的结果与rand(true)相似,说明。。。

后面的就不继续了。

2.基于时间的盲注

?sort=1 and (if((ascii(substr((select database() limit 0,1),1,1))=115),sleep(5),1))–+

也不多说了。

第四十七关:

和第四十六关一样,只是是字符型的注入。

第四十八关:

这关没有报错信息,使用上面说的盲注就可以。

第四十九关:
页面没有变化,使用基于时间的盲注。

第五十关:

和四十八关类似,只不过执行 sql 语句使用的是 mysqli_multi_query()函数,会执行多条sql语句,所以

order By后面可以使用堆叠注入,整型

第五十一关:

order By后面可以使用堆叠注入,字符型

第五十二关:

和第四十九关类似,需要使用基于时间的盲注 也可以堆叠注入 整数型

第五十三关:

和第四十九关类似,需要使用基于时间的盲注 也可以堆叠注入 字符型

猜你喜欢

转载自www.cnblogs.com/jinqi520/p/9595369.html