DVWA靶场中的暴力破解基本都是用Burpsuite引入弱密码字典进行爆破,但是High等级的就不一样了,涉及Python脚本,等研究出来怎么回事再补上High等级的吧。
Low:
直接观察源代码
我们随意输入一个密码,抓包
然后全选拦截下来的信息,发送至Intruder模块
然后在右侧的添加标注处,取消所有标注
然后在password处添加标注
因为我们要爆破的目标是password
然后在payloads选项中加载字典
然后点击start attack开始攻击
可以看见,password这一行的Length值明显要长
所以password就是正确的密码
回到页面输入账号密码登录即可
Medium:
相比于Low,我们对比一下源码
从代码可以看出,medium级别的漏洞利用了mysqli_real_escape_string()对特殊字符进行了转义
G
L
O
B
A
L
:
引
用
了
全
局
作
用
域
中
可
用
的
全
部
变
量
。
GLOBAL:引用了全局作用域中可用的全部变量。
GLOBAL:引用了全局作用域中可用的全部变量。GLOBAL这种全局变量用于在PHP脚本中的任意位置访问全局变量(从函数中或方法中都可以)。PHP在名为$GLOBAL[index]中存储了所有的全局变量。变量的名字就是数组的键。
Medium级别的代码对用户输入的参数进行简单的过滤,对一些预定义字符进行了转义,基本上杜绝了SQL注入。
同时利用了sleep()函数:
如果输入了错误的密码,则要延迟两秒钟才能重新输入
对此,我们同样可以像Low级别那样利用BP引入字典进行爆破,但是时间比较长,因为一次错误就要等待两秒钟才能继续去匹配,所以我们可以准备一个小一点的字典
结果如下:
可以明显感觉到时间稍微长一些
但是password那一行很明显的Length值长一些
这就是正确密码
返回页面,输入admin输入密码,成功登陆
慢慢来吧,慢慢地将自己的热情放在喜欢的事儿上~
会有好的结果的