分析 Burp Intruder 中的攻击结果

Beginner
立即练习

引言

在 Burp Intruder 中运行攻击后,下一步关键是分析结果以识别潜在漏洞。结果表格提供了丰富的信息,但了解如何高效地排序、过滤和检查它,是发现安全缺陷的关键。

在本实验中,你将学习分析已完成的 Intruder 攻击的基本技术。为了仅关注分析工作流程,我们将使用一个预先加载的 Burp Suite 项目文件,其中已包含攻击结果。你将学习如何启动 Burp Suite,打开项目,并使用内置工具检查结果。

查看已完成的 Intruder 攻击结果表格

在此步骤中,你将启动 Burp Suite 并打开一个现有项目,以查看预先运行的攻击结果。这是任何分析的起点。

首先,从桌面应用程序菜单打开一个终端。

现在,在终端中运行以下命令来启动 Burp Suite Community Edition。加载可能需要一些时间。

burpsuite

将出现一个启动对话框。由于我们使用的是预先配置的项目,请选择 Open an existing project (打开现有项目) 并点击 Next (下一步)。

在文件选择窗口中,导航到 /home/labex/project 目录。你将看到一个名为 burp-intruder-results.bpr 的文件。选择此文件并点击 Open (打开)。

在最终对话框屏幕上点击 Start Burp (启动 Burp)。

Burp Suite 加载完成后,导航到 Intruder (入侵者) 选项卡。你将看到攻击已运行,并且 Results (结果) 子选项卡已填充数据。花点时间查看可用的列,例如 Request (请求)、Payload (载荷)、Status (状态) 和 Length (长度)。

按“状态”码对结果进行排序

在此步骤中,你将学习如何按 HTTP 状态码对攻击结果进行排序。排序是一种快速分组相似响应并发现异常值的方法。不同的状态码可以指示不同的应用程序行为,这对于分析很有用。

Intruder > Results (入侵者 > 结果) 选项卡中,找到名为 Status (状态) 的列标题。

点击 Status (状态) 列标题。表格将根据 HTTP 状态码按升序对所有结果进行排序。再次点击标题将按降序排序。

对表格进行排序,以便你能看到除了 200 OK 之外是否存在其他状态码。例如,302 Found 可能表示成功的登录重定向,而 403 Forbidden500 Internal Server Error 也可能很有趣,值得进一步调查。将这些代码分组在一起可以方便查找。

按“长度”对结果进行排序以查找异常

在此步骤中,你将按响应长度对结果进行排序,以识别异常。在许多类型的攻击中,例如密码猜测或内容发现,成功的尝试通常会导致响应的长度与不成功的尝试不同。

Intruder > Results (入侵者 > 结果) 选项卡中,找到名为 Length (长度) 的列标题。

点击 Length (长度) 列标题对结果进行排序。观察这些值。你可能会看到大量具有完全相同长度的响应。这些通常代表服务器的基线“失败”或“默认”响应。

再次点击 Length (长度) 标题以相反方向排序。任何长度明显不同的响应——无论是长得多还是短得多——都是值得仔细检查的异常。这是在大型数据集中查找有趣结果的最有效方法之一。

点击结果以查看完整的请求和响应

在此步骤中,你将从表中选择一个有趣的结果来查看完整的 HTTP 请求和响应。在通过排序识别出潜在异常后,你需要检查原始流量以了解发生了什么。

首先,在结果表中找到一行有趣的数据。这可能是一行具有独特状态码或响应长度与其他数据相比显得突出的行。

点击该行以选中它。

选中一行后,查看结果表下方的窗格。你将看到用于 Request (请求) 和 Response (响应) 的一组选项卡。

  • 点击 Request (请求) 选项卡,查看 Burp 发送到服务器的确切 HTTP 请求。你可以看到为该特定请求注入的 payload。
  • 点击 Response (响应) 选项卡,查看服务器的完整响应。

通过在请求和响应之间切换,你可以分析为什么特定的 payload 会导致异常响应。例如,不同的响应长度可能是由于响应正文中出现了错误消息或成功的登录消息。

使用“过滤器”栏隐藏不感兴趣的结果

在此步骤中,你将使用过滤器栏隐藏不感兴趣的结果。当攻击生成数千个结果时,手动排序和滚动效率低下。过滤器是一个强大的工具,可以缩小视图范围,只显示重要的内容。

在结果表正上方,你会找到 Filter (过滤器) 栏。此功能允许你根据各种条件显示或隐藏结果。

让我们尝试一个实际的例子。按长度排序后,你可能已经注意到失败尝试的响应长度非常普遍。假设该长度为 4850

  1. 在过滤器的文本框中输入 4850
  2. 选中 Hide (隐藏) 单选按钮。
  3. 结果表现在将隐藏所有长度为 4850 的响应,从而更容易看到剩余的少数异常结果。

你还可以按其他属性进行过滤,例如状态码或响应中的搜索词。要清除过滤器,只需删除输入框中的文本即可。尝试使用过滤器,看看它如何帮助你集中分析。

总结

在本实验中,你学习了在 Burp Intruder 中分析攻击结果的基本技术。这些技能对于从自动化攻击中高效查找漏洞至关重要。

你首先打开了一个预先存在的 Burp 项目,并导航到 Intruder 结果表。然后,你练习了按 HTTP 状态码和响应长度对结果进行排序,以快速识别异常。接下来,你学习了如何检查任何给定结果的完整请求和响应,以了解服务器的行为。最后,你使用了强大的过滤器功能来隐藏干扰信息,并专注于最有趣的结果。

掌握这个分析工作流程将显著提高你处理自动化工具输出和精确定位安全缺陷的能力。