sql注入学习——布尔盲注

前言:之前通过前九关学习到了回显注入、报错注入等一些方法,这次就来详细的学习布尔盲注

首先来了解一下盲注的概念

盲注是注入的一种,指的是在不知道数据库返回值的情况下对数据中的内容进行猜测,实施SQL注入。

布尔盲注

原理:
注入的时候只会返回True和False,所以布尔盲注就是根据页面显示的是True还是False进行猜测数据库中的信息。

布尔盲注需要几个函数的辅助,就先来了解一下这几个函数

length()函数可返回字符串的长度
substring()函数可以截取字符串,可指定开始的位置和截取的长度
ord()函数可以返回单个字符的ASCII码
char()函数可将ASCII码转换为对应的字符

具体的用法可以参考大佬的博客Mysql语法介绍,接下来就通过sql-labs练习布尔盲注。

判断注入点(也就是闭合符号)
发现输入id=1'会报错

http://127.0.0.1/sqli-labs-master/Less-8/?id=1'

id=1'后再加上注释符号后又回显正确,所以判定闭合符号为'

爆数据库长度
知道闭合符号后,先来爆一下数据库名的长度,这里就用到上面所说的函数了

http://127.0.0.1/sqli-labs-master/Less-8/?id=1' and length(database())>1 --+

回显正确
在这里插入图片描述
手工注入的话就要一遍一遍的试试,将后面的长度不断增大,最后得出数据库名的长度为8

爆数据库名
知道了数据库名的长度,接下来就来爆破数据库名

Less-8/?id=1' and  ord(substr(database(),1,1))>99 --+
Less-8/?id=1' and ascii(substr((database()),1,1)) > 99 
  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值