SQL 布尔型盲注入的原理与注入攻击

SQL 布尔型盲注入的原理

在这里插入图片描述

布尔型输入介绍:

布尔型注入,一般在测试中不会在页面显示数据库信息,只会提示对与错的内容。
代码的过程:get接收id参数-》id带入查询-》如果存在值返回id exists字符串信息。
例如:在某个系统登录页面输入账号密码时提示对与错,要是存在注入就是SQL盲注入,盲注入有两种方式:一种是布尔型忙注入,另外一种是延时注入。
在这里插入图片描述

判断盲注入:

输入SQL注入检测语句,判断返回页面是否一样,如果不一样可能存在SQL盲注入漏洞,例如使用:1‘and’1‘=’1 真 和 1‘and’1‘=’2 假 进行判断。
如果输入检测语句页面无变化可以使用延时语句进行检测:1‘and’1‘=’1 sleep(10)–+ ,sleep函数是MySQL延迟返回10的意思。如下图:
在这里插入图片描述
可以通过以上方式进行判断是否存在漏洞。
如dvwa靶场来演示该漏洞如下:
1’and 1=1–
在这里插入图片描述
1’and 1=2–
在这里插入图片描述
使用sleep函数:
让它sleep(10)-- ,结果是等待10秒
在这里插入图片描述
以上这样就是已经知道存在SQL注入漏洞了。

构造SQL语句:

布尔型盲注的SQL语句:select if(1=1,1,0) if() 函数是在MySQL判断。第一个参数表达式,如果条件成立会显示1,如果不成立显示0,还是使用真假进行判断,条件测试成立后可以将表达式替换成SQL语句进行SQL注入攻击。
判断例子如图:2大于1
在这里插入图片描述

布尔型盲注入获取数据库敏感信息:

通常在黑盒的环境下,通过构造SQL注入语句,根据页面的特征确定获取敏感信息,布尔型盲注入所需要用到的函数有:SUBSTRING()字符串截,第一个参数是字符串,第二个参数是开始截取,第三个是截取的长度。如图所示:
在这里插入图片描述
select database() 查询当前数据库。如图所示:
在这里插入图片描述
以上两种最终结合效果:
判断当前数据库,获取第一个字符,然后进行判断字符是否为d是的话为1,否则会0,语句结果如下
select * from users where user_id=1 and if(substring(database(),1,1)=‘d’,1,0)
在这里插入图片描述

黑盒情况下布尔型注入:

上面已经给大家讲解布尔型原理的,那在黑盒的模式下进行测试首先判断注入,在判断获取数据库的长度,在查询库名,最后在通过表查询字段。
布尔型盲注入查询长度:
查询库名的前提条件需要确定查询数据库的长度,在通弄个截取字符进行对比。
使用length()函数来获取当前库的长度。如图所示:获取到的长度为4
在这里插入图片描述
1’ and if(length(database())=4,1,0) 长度为4返回1 说明该长度是正确的,如图所示:可以使用=,<,>进行判断
在这里插入图片描述
1’ and if(length(database())>1,1,0)-- 结果:
在这里插入图片描述1’ and if(length(database())>4,1,0)-- 结果:
在这里插入图片描述
最终测试出来长度为4

burp获取库名

判断语句格式如:
select * from users where user_id=1 and if(substring(database(),1,1)=‘d’,1,0)
可以利用抓包使用字典进行枚举的出库名。
操作如下:
开启burp,输入内容抓包枚举
给长度和字符添加变量
在这里插入图片描述
选择字典1 和 2添加好字典后就可以点右上方的攻击了
长度字典设置:
在这里插入图片描述
在这里插入图片描述
最后得到了dvwa库名了
在这里插入图片描述
总结:
这次带领大家了解了SQL盲注详细原理和实际利用,有喜欢的可以点个关注!
下次更新:实战盲注入使用buspsuite配合获取数据

**声明:**本作者:space invaders 所分享内容仅用于网安爱好者之间的技术讨论,禁止用于违法途径,所有渗透都需获取授权!否则需自行承担,本作者不承担相应的后果。

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

重生者安全

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值