sqlilabs less-25
sqlilabs less-25
前期判断
看来所有的or
和and
都被过滤了,试验了一下确实如此,那先判断诸如类型。
哎,连井号都给我过滤了么。
换井号的url编码(%23)试试。
绕过过滤注入
先来判断一下显示的列数。
获取表名出现了问题
-1' union select null,null,group_concat(table_name) from information_schema.tables where table_schema=database()%23
information
的or
被过滤了怎么办呢,先试试大写or
会怎么样呢。
再试试oorr
,不出意外oorr
过滤了中间的or
后就留下了左右两侧的o
和r
又形成了or
。
把information
的or
改成oorr
,即infoorrmation
。
接着就是判断列名,数据值了。
源码时间
可以看到and和or后面各有行注释不区分大小写。为什么只看到一个大写的AND
和OR
却能不区分大小写,因为使用了正则表达式
/AND/i /i修饰符是不区分大小写,搜索的时候A和a没有区别。
sqlilabs less-25a
经过简单判断,可以发现25a是数字型注入。
然后和25没有区别了
看了眼源码
只有数字和字符型的差距。