1. 技术支持中心
  2. 文档

Burp Collaborator

本节包含有关什么是Burp Collaborator,Burp Collaborator的工作方式,由Burp Collaborator处理的数据的安全性以及使用Burp Collaborator的选项的信息。

什么是Burp Collaborator?

Burp Collaborator是Burp Suite用来帮助发现许多漏洞的网络服务。 例如:

当可以诱使应用程序从外部系统检索内容并以某种方式对其进行处理时,会出现一些漏洞。 例如,应用程序可能会检索提供的URL的内容,并将其包含在自己的响应中。

Burp Collaborator

Burp扫描仪和手动Burp Collaborator客户端使用Burp Collaborator,并且Burp Extender API也可以使用Burp Collaborator。

Burp Collaborator的工作方式

Burp Collaborator作为单个服务器运行,该服务器提供各种网络服务的自定义实现:

以下是一些可以通过Burp Collaborator检测到的问题的示例。

检测外部服务交互

可以检测到典型的外部服务交互问题,如下所示:

Detecting external service interaction

检测带外资源负载

当可以诱使应用程序从任意外部源加载内容并将其包括在自己的响应中时,就会发生带外资源加载。 Burp Suite可以通过促使Collaborator服务器在其对外部交互的响应中返回特定数据,并分析该应用程序对相同数据的带内响应来检测此问题:

Detecting out-of-band resource load

检测盲目的跨站点脚本

Burp可以提交基于注入的有效负载,这些负载旨在在注入成功时触发外部交互,从而能够检测到完全盲目的注入漏洞。 以下示例在成功注入SQL语句后使用特定于Oracle的API触发交互:

Detecting blind SQL injection

检测盲目的跨站点脚本

Collaborator服务器可以通知Burp延迟交互,这些交互是在将相关带内有效载荷提交给目标之后异步发生的。 这样就可以检测各种存储的漏洞,例如二阶SQL注入和盲目的XSS。在下面的示例中,Burp Suite提交了一个存储的XSS有效载荷,该有效载荷旨在触发Collaborator交互(如果曾经呈现给用户)。 稍后,管理员用户查看有效负载,然后他们的浏览器执行交互。 稍后,Burp Suite会轮询Collaborator服务器,接收交互的详细信息,并报告存储的XSS漏洞:

Detecting blind cross-site scripting

Collaborator数据的安全性

用户可能对Collaborator服务器处理的数据的安全性有合理的担心,并且该功能在设计时特别强调了此数据的安全性。

Collaborator服务器存储什么数据?

在大多数情况下,发现漏洞时,Collaborator服务器将不会收到足够的信息来识别漏洞。 它看不到从Burp发送到目标应用程序的HTTP请求。 在典型情况下,它将记录从某处接收到交互,包括Burp生成的随机标识符。 有时,Collaborator服务器会收到一些特定于应用程序的数据:例如,通过用户注册表格生成的电子邮件的内容。

如何控制Collaborator数据的检索?

设计了Collaborator功能,以便只有生成给定有效负载的Burp实例才能检索该有效负载导致的任何交互的详细信息。 该要求的实现如下:

除此机制外,在Collaborator服务器中还实施了以下预防措施,以防止未经授权访问其数据:

使用Burp Collaborator的选项

Burp用户可以在以下三个选项中选择使用Burp Collaborator:

注意: Burp Collaborator的功能引起了需要用户仔细考虑的问题。 用户应确保他们充分了解Burp Collaborator的功能和替代使用方法,并考虑了使用对自己和组织的影响。

在Burp Suite Professional中,您可以在Burp Collaborator服务器选项中配置这些设置。