在 Burp Suite 中配置上游代理服务器

Beginner
立即练习

引言

在本实验中,你将学习如何在 Burp Suite 中配置一个上游代理服务器。上游代理是指 Burp Suite 将其发出的请求转发到的另一个代理服务器,而不是直接发送到目标 Web 服务器。这种技术通常被称为代理链(proxy chaining),在多种场景下都很有用,例如通过特定网络(如 Tor)路由流量、绕过基于 IP 的访问控制,或者在需要所有流量都通过公司代理的企业网络中工作。

你将在此过程中学习如何启动 Burp Suite,导航到正确的设置,并创建一个规则将所有流量通过指定的上游代理进行路由。

导航至 Project options > Connections > Upstream Proxy Servers

在此步骤中,你将启动 Burp Suite 并找到配置上游代理的设置。LabEx 虚拟机已预装 Burp Suite Community Edition。

首先,打开终端并运行以下命令来启动 Burp Suite:

burpsuite

将出现一个启动屏幕,随后是一个项目选择对话框。对于本实验,临时项目(Temporary project)已足够。选择 Temporary project 并点击 Next

接下来,你会被询问 Burp 配置。选择 Use Burp defaults 并点击 Start Burp

主 Burp Suite 窗口打开后,你会在顶部看到几个选项卡。点击 Project options 选项卡。在 Project options 选项卡下,会显示一组新的子选项卡。点击 Connections 子选项卡。

最后,在 Connections 设置中向下滚动,直到找到 Upstream Proxy Servers 部分。在这里你可以定义路由 Burp 流量的规则。

点击 'Add' 定义新的上游代理规则

在此步骤中,你将开始创建新的上游代理规则。

在你上一步找到的 Upstream Proxy Servers 部分,你会看到一组按钮:AddEditRemoveUpDown。要创建新规则,你需要点击 Add 按钮。

点击 Add 会打开一个名为 Edit upstream proxy rule 的新对话框窗口。该窗口包含了定义单个路由规则所需的所有设置,包括要匹配的目标和要使用的代理服务器。

设置目标主机 (例如 '*')

在此步骤中,你将配置规则以应用于 Burp Suite 的所有出站流量。

Edit upstream proxy rule 对话框中,第一个字段是 Destination host。此字段根据目标服务器的主机名或 IP 地址,决定哪些请求将通过上游代理路由。

要使 Burp Suite 的所有流量都通过上游代理,你可以使用通配符。在 Destination host 字段中输入星号 (*)。星号充当通配符,匹配所有主机名。

虽然我们在此实验中使用 *,但在实际场景中,你可以输入一个特定的主机名,如 example.com,或者一个子域名的通配符,如 *.api.example.com,以实现更精细化的控制。

输入代理主机和端口号

在此步骤中,你将指定上游代理服务器的地址。

仍在 Edit upstream proxy rule 对话框中,找到 Proxy hostProxy port 字段。这些字段告诉 Burp 将匹配目标主机规则的流量发送到哪里。

本次实验,我们将使用一个运行在本地机器上的假设代理。

  • Proxy host 字段中,输入 127.0.0.1
  • Proxy port 字段中,输入 8081

在这些字段下方,你会看到一个 Authentication 部分。如果上游代理需要用户名和密码,则会用到此部分。本次练习中,我们将保持此部分为空。

输入主机和端口后,点击对话框底部的 OK 按钮以保存并添加新规则。

启用规则并测试连接性

在此步骤中,你将启用新创建的规则并观察其效果。

在上一步点击 OK 后,你将返回到 Connections 选项卡。现在你应该能在 Upstream Proxy Servers 表格中看到你创建的新规则。

注意规则左侧的复选框。此复选框用于启用或禁用规则。默认情况下,在你创建规则时,它会被选中(启用)。请确保复选框已勾选。

现在,让我们进行测试。测试代理配置最简单的方法是使用 Burp 内置的浏览器。

  1. 转到 Proxy 选项卡。
  2. 转到 Intercept 子选项卡。
  3. 点击 Open Browser 按钮。一个新的浏览器窗口将打开,它已预先配置为使用 Burp。

在此新浏览器中,尝试访问任何网站,例如 http://example.com。连接会失败。这是预期的!连接失败是因为 Burp 正在尝试将请求转发到我们不存在的上游代理 127.0.0.1:8081。你可以在 Burp 的 Dashboard 选项卡下的 Event log 中看到失败的警报。

此失败确认了你的上游代理规则正在正常工作。

要完成此实验,请关闭 Burp Suite。一个对话框会询问你是否要保存项目。点击 Yes。在保存对话框中,将文件命名为 upstream-proxy-config.burp,并将其保存在默认的 /home/labex/project 目录中。

总结

恭喜你完成本次实验!

在本次实验中,你已成功掌握了在 Burp Suite 中配置上游代理服务器的基础知识。你练习了如何:

  • 导航到 Upstream Proxy Servers 设置。
  • 添加新的代理规则。
  • 使用通配符 (*) 定义广泛的目标主机匹配。
  • 指定上游代理的主机和端口。
  • 启用并测试规则以确认流量已被重定向。

这项技能对于需要控制和操纵复杂环境中网络流量的渗透测试人员和安全专业人员至关重要。