DVWA|暴力破解

admin 2022年8月28日09:21:20评论70 views字数 1856阅读6分11秒阅读模式
DVWA中设置有四个安全等级,分别是:low、medium、high、impossible,难度依次递增。安全等级在左边菜单栏选项中的DVWA Security选项下设置,如图:

DVWA|暴力破解


BurteForce也就是暴力破解,通过尝试不同的密码进行登陆以猜出用户的正确密码。本次所使用的工具为Burpsuite。
用Burpsuite要先设置浏览器代理(通常设置为127.0.0.1:8080),可以通过以下两种方式进行修改:

1.通过本机设置。电脑左下角搜索栏直接搜索代理或者在 开始菜单——控制面板——网络与Internet——代理 进行设置。

    2.使用浏览器插件进行设置。火狐浏览器在扩展中搜索代理,插件名为FoxyProxy Standard,设置步骤比较简单,所以不再赘述。


LOW


1.Burpsuite的代理在option选项下设置,默认设置为127.0.0.1:8080。

2.打开拦截按钮。流程如下:Proxy——intercept——intercept is on。设置 完毕后在靶场中输入账号密码进行登录,便可以拦截到登陆的请求包。

3.在拦截到请求包界面下鼠标右键选择send to intruder(或者使用快捷键ctrl+L),然后点击intercept按钮关闭拦截状态,否则网页上的数据包无法传输,页面会加载失败。

4.在intruder界面下的positions选项下,点击clear$清除所有的标记,选中需要爆破的值后点击add$进行标记,如图:

DVWA|暴力破解


5.在payloads选项下选择load加载字典后点击右上角的Start attack进行爆破。字典可以从网上下载或者自己创建一个txt格式的文档并写入需要猜解的密码,密码之间用换行符隔开。通过比较返回包的长度判断出正确的密码为password,因为错误的返回包的长度和正确的返回包长度不一致。

DVWA|暴力破解




Medium


重复上文步骤进行爆破,发现爆破速度降低了很多,相隔两秒左右才爆破一次。在网页界面右下角点击View Source查看源码分析原因,如图:

DVWA|暴力破解


代码中对登陆失败的情况进行了限制,失败后两秒才可以继续登陆,但是还可以进行爆破只不过速度受到影响。


High


同上操作对登陆的请求包进行拦截,发现请求中多了一个token字段。继续按步骤进行爆破后发现爆破失败。

DVWA|暴力破解
查看代码后发现登陆时服务器对token字段进行了校验。在用户登陆时无论是成功还是失败服务器都会返回前端一个token值,只有在下次登陆中携带该token值服务器才会去校验用户的账号和密码,以此来避免暴力破解。

我们查看第一次登陆的请求包,如图:

DVWA|暴力破解


在拦截的请求包界面下右键选择Do intercept后释放请求包后会拦截该请求包的返回包,然后查找服务器返回的token值,如图:

DVWA|暴力破解


第二次登陆的请求包如图:
DVWA|暴力破解


经过比较发现第二次请求包中携带token值果然和第一次请求包中返回的值一致。因此我们需要对爆破步骤进行一些修改,具体步骤如下:
    1.拦截请求包并发送到intruder模块,与上文的区别是当设置参数时,我们需要将token的值同样设置为需要爆破的参数并且选择攻击类型为pitchfork。

如图:

DVWA|暴力破解


2.password还是通过加载字典进行爆破,在设置参数2的时候需要现在option选项下将Request Engine的Number of threads值设置为1,并勾选Grep-Extract。如图:

DVWA|暴力破解


3.点击add添加,之后点击fetch response获得返回包,搜索“token”进行快速定位,复制token的值。如图:

DVWA|暴力破解


4.回到Payloads界面设置Payload Type为Recursive grep并将复制的token值填到图一位置,便可以开始爆破。

DVWA|暴力破解


可以在返回包中的Render视图中直接查看返回包在页面下的结果来判断是否爆破成功。结果如图:
DVWA|暴力破解



Impossible


impossible的难度下几乎很难再进行暴力破解,但是可以了解其防御手段作为防止方法。

点击页面右下面的View Source按钮查看代码。通过在代码层面查看服务器采取了哪些防御措施。

1.检验token值防止CSRF攻击。

DVWA|暴力破解


2.过滤转义用户输入的username和password。

DVWA|暴力破解


3.使用pdo(php data object)防止sql注入。

DVWA|暴力破解


4.登陆失败三次后锁定15分钟。

DVWA|暴力破解


5.登陆失败后,随机在2-4秒后返回错误信息。

DVWA|暴力破解


除此之外防止爆破还有其他的方式,像对传输数据进行加密、多次尝试后需要输入验证码、强制用户使用强密码等。


原文始发于微信公众号(仙友道):DVWA|暴力破解

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年8月28日09:21:20
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   DVWA|暴力破解http://cn-sec.com/archives/921419.html

发表评论

匿名网友 填写信息