Sqli-labs 15-19

15关:

在输入框内测试Username=asd,Password=123并点击提交后发现并没有什么卵用。

在Username处尝试万能钥匙1‘ or 1=1#发现成功登录了。

接下来看源码分析问题:

 由于红下划线处的username=‘$uname‘所以payload:1’ or 1=1#会使得username处闭合并且将从and以后的sql语句全部注释掉,因此无论username等于几后面的or 1=1为永真因此返回真值所以页面回显登录成功。然而当使用payload:1’ or 1=2#时,由于1=2为假值所以会返回登录不成功的页面。根据这个机制,我们可以在payload后面加上搜查语句当登录成功页面显示时则可代表数据库中有这条数据。

16关:

尝试万能钥匙1‘ or 1=1#,并没有卵用。

 

尝试万能钥匙1‘ or 1=1#,并没有卵用

 

尝试把‘换成“也没有什么卵用

 

尝试xxx“)or 1=1+注释好使

 

有试了一下时间盲注,结果睡死了。浏览器再也没醒来☹

 

看一眼源码,红线处为在php中的sql语句。有括号的。剩下的注入内容跟前两个差不多

17关:

老规矩,一顿测

 

包括之后的payload测试

uname=1' or 1=1#&passwd=123&submit=Submit

uname=1)’ or 1=1#&passwd=123&submit=Submit

uname=1" or 1=1#&passwd=123&submit=Submit

uname=1)" or 1=1#&passwd=123&submit=Submit

uname=asd" or 1=1#&passwd=123&submit=Submit

uname=asd)" or 1=1#&passwd=123&submit=Submit

uname=asd" or 'a'='a'#&passwd=123&submit=Submit

全凉了

看源码

写了个输入过滤,干。过滤了空输入,输入长度(16个单词最多),魔术符号,检测当不为数字型数据时只能为数据库内的正确值。 

 

此处为先检测用户名是否为正确的,所以用户名凉了

因为有个图忘记截了,其实代码再往下看的话会发现密码处并没有过滤所以尝试在密码处输入payload成功并且有回显。

18关:

本关跟17关基本一样,只不过本关在17关源码过滤处的基础上加上了密码过滤但加入了UserAgent。因此可以做UserAgent注入。一下为源码

 

依然是过滤的function熟悉的配方

 

 

密码注入无了,但是上面有个uagent是根据HTTP_User_agent进来的 😊

 

怼一下

 

有回显😊

19关:

19跟18基本一样,只不过把useragent换成了refer

上源码:

 

 

 

熟悉的配方,熟悉的味道。用户名,密码依然没有。但是17关的uagent换成了refer

 

 

来个payload怼一下

😊

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值