← 返回

使用 Burp Suite 攻破 DVWA Brute Force 模块(Low-Medium-High)

安全 • 渗透 • 2026年5月11日

DVWA(Damn Vulnerable Web Application)是一个用于安全测试和学习的 Web 应用程序,包含多个漏洞模块。其中 Brute Force 模块常用于测试暴力破解攻击。本篇记录使用 Burp Suite v2026.4.2 在 Low、Medium、High 三个等级下的测试方法。

一、Low

  1. 设置浏览器代理为 Burp Suite,访问 DVWA Brute Force 模块。
  2. 打开 Burp Suite 拦截:Proxy -> Intercept -> Intercept on。
  3. 在浏览器输入用户名与密码 123456 并登录,Burp Suite 会拦截请求。
  4. 在 Burp Suite 中选中请求,点击 Send to Intruder
Burp 拦截登录请求
  1. 进入 Intruder,框选密码位置(如 123456),点击 Add
Intruder 设置密码位置
  1. 在 Payloads 中加载密码字典(如 rockyou.txt),开始攻击。但Burp Suite Community Edition在最需要速率的暴力破解模块限制了速率:(
    可先测试前几个密码,并确保包含正确密码 password
  2. 观察响应长度,通常正确密码对应的响应长度会与错误尝试明显不同。
通过响应长度识别正确密码

二、Medium

通过 View Source 可见,Medium 相比 Low 增加了固定 3 秒延时,其余逻辑基本一致,因此攻击流程与 Low 相同。

(虽然这是个不错的策略,但如果我告诉你 Burp Suite Community Edition 已经每次请求间限速超过 3 秒了呢?)

Medium 等级源码与测试结果

三、High

High 在 Medium 基础上加入了 CSRF Token(参数名 user_token),并将延时改为 0-3 秒随机。

要点是每次请求都需要携带最新 Token,因此需要使用 Burp 的宏自动获取并回填参数。

1. 记录宏 Macro Recorder

  1. 打开 Proxy settings -> Sessions -> Macros -> Add。
  2. 选择倒序查看请求,刷新页面后选择新出现的 vulnerabilities/brute/index.php 请求并确认。
  3. 在 Macro Editor 的 Response 中找到隐藏字段:<input type='hidden' name='user_token' value='...'/>
  4. 点击 Configure item -> Add,框选 Token 值并设置 Parameter name 为 user_token。Burp Suite会自动识别位置
配置 Macro 捕获 user_token
Macro 配置完成

2. 添加 Session Handling Rule

  1. 打开 Proxy settings -> Sessions -> Session handling rules -> Add。
  2. 在 Rule actions 中添加 Run a macro,选择上一步创建的 Macro。
  3. 设置Update only the following parameters and headers: user_token
  4. 勾选Tolerate URL mismatch ...,点击OK。
  5. 在 Scope 中仅保留 Intruder,URL scope 选择 Include all URLs。
配置 Session Handling Rule

3. 发起 Intruder 攻击

按 Low 相同步骤执行后,不再出现旧 Token 导致的无效响应304。Burp 会在每次尝试前自动获取新 Token,从而绕过防护并最终通过响应差异识别正确密码 password

High 等级成功识别正确密码