Blind注入
做到一半环境又又又崩了
SQL注入(Blind)是一种常见的安全漏洞,它允许攻击者向应用程序的数据库中执行恶意的SQL查询 在传统的SQL注入攻击中,攻击者可以直接获取到应用程序返回的数据库错误信息或查询结果,从而了解到他们所注入的恶意SQL语句是否生效
这里我就不介绍概念了
这里我就直接测试了
首先审计代码
发现没有进行任何id过滤
开始测试
首先我们传个1的参数
可以看到返回exists,为true为正常显示
接着传入一个1#
返回为true正常显示
传入1’
返回为false,报错,单引号闭合
传入1' and 1=1 #
正常返回true
传入1' and 1=2 # 看是否报错
返回为false,存在注入,这个时候我们就要手动测试数据库的库名长度
传入1‘ and length(database())>=5#
返回false,接着改值
传入1‘ and length(database())>=4#
返回为true,现在我们知道了它所连接的数据库为4个字母当然这里肯定有差异,如果返回依然为false就接着往下减1
猜测数据库第一位为'd'
传入1' and substr(database(),1,1)='d'#
返回结果为true,接着就是爆库
首先将http地址解码
原来地址是一串UTF-8编码码看不清
接着运行--拦截请求包
burp暴力破解.
捕获请求包,接着发给Intruder暴力破解
选择Clusterbomb进行测试
面对url编码的问题
这里说实话我有点崩溃解码解着解着弹出CSRF令牌不正确,环境崩了,但是经过我的抢救此测试还是成功了
首先地址解码
解码之后运行
捕获请求包
现在请求包网址还是乱码状态
复制上面网址粘贴到GET注意别全复制粘贴选节粘贴
然后粘贴到burp中
再进行爆破
添加需要测试的点
设置有效载荷集
因为需要测试库的名字所以选择所有英文字母
线程数看个人配置进行更改
进行测试
测试成功爆出的库名为dvwa