SQLi-LABS 21关
1.该关和20关一样也是cookie注入,需要抓包,在抓包后发现现cookie的值有些变化,被base64编码了,所以我们注入的语句也要进行base64编码,在网上找一个base64编码的工具
2.将语句进行base64编码得到数据库名
使用语句:
admin') and updatexml(1,concat(1,database()),1)#
SQLi-LABS 22关
22关和21关一样,都是cookie注入,只是22关是双引号闭合方式,只需将将21关语句改为双引号进行base64编码即可得到数据库名
SQLi-LABS 23关
1.23关又变成了get参数形式,进行常规的闭合测试,但发现输入什么都报错
所以查看源码得到注释符都被变为了空
2.所以使用另一种方式进行闭合
?id=1' or '1'='1
解释:第一个单引号用于闭合1,第2个,用于闭合or;第3个和第4个是一对,由于闭合=
3.使用报错注入进行查询
使用语句:
?id=1' and updatexml(1,concat(1,database()),1) or '1'='1
SQLi-LABS 24关
1.24关是二次注入,就是创建一个特殊用户,在修改密码时修改的时目标用户的密码
比如我们要更改admin的密码,它现在的密码是789
首先,我们查看源代码是'#闭合方式
那我们就创建一个admin'#的用户,密码为123
2.登录我们创建的这个用户,进入修改密码的界面,我们直接修改密码,原密码我们是知道的123
新密码就是admin的密码,我们将其改为666666
修改成功后,我们刷新数据库,看到admin的密码已经变为666666
同事也有一个我们创建的用户admin'#
SQLi-LABS 25关
1.25关过滤了and和or,这里正常注入即可
2.判断闭合方式
发现是' --+闭合
3.使用联合查询进行注入
使用语句:
?id=-1' union select 1,database(),3 --+