企业专业的

Burp渗透器

  • 最近更新时间:2022年4月6日

  • 阅读时间:7分钟

BURP渗透器是用于启动目标Web应用程序的工具,以便于使用beplay体育能用吗打扫扫描仪。BURP渗透器修改了目标应用程序,以便BURP可以检测其输入传递给服务器端上可能不安全的API的情况。

Burp Impltrator当前支持以下申请:

  • Java,Groovy,Scala或其他JVM语言(JRE版本1.4-1.8)
  • C#,VB或其他.NET语言(.NET版本2.0至4.5)

重要通知

  • BURP渗透器不应在需要可用,性能或正确操作的生产系统或任何其他系统上使用。Burp Impltrator对应用程序进行了更改,可能会导致服务中断,性能退化,应用程序错误或其他问题。
  • Burp渗透器对应用程序字节码进行了不可逆的更改。为了恢复Burp渗透器所做的更改,有必要从原始未修饰的来源重新启动应用程序。
  • BURP渗透器会改变应用程序的行为,以便可以向任何可以通过网络与应用程序进行交互的人披露潜在的敏感信息。
  • 由于这些原因,仅在(a)仅用于测试目的的系统上使用BURP渗透器以及(b)对任何不信任可能披露的信息的人都无法访问的系统。

Burp渗透器如何工作

Burp渗透器以以下方式工作:

  1. Burp用户从Burp Suite专业人士,通过打bur菜单。
  2. 应用程序开发人员或管理员通过在包含应用程序字节码的计算机上运行BURP渗透工具。
  3. Burp渗透器对应用程序字节码进行补丁,以在调用可能不安全的API的位置注入仪器钩。
  4. 该应用程序以正常方式启动,运行修补字节码。
  5. Burp用户以正常方式对应用程序进行扫描。
  6. 当应用程序调用潜在的不安全API时,仪器钩检查了与API的相关参数。任何包含的burp有效载荷Burp合作者域根据其独特的结构进行指纹识别。
  7. 仪器钩将检测到的BURP合作域突变,以合并所谓的API标识符。
  8. 仪器钩执行了突变的BURP合作者域的DNS查找。
  9. 可选,基于配置选项,仪器钩向突变的BURP合作者域提出了HTTP/S请求,包括相关参数的全部值和应用程序调用堆栈。
  10. Burp以正常方式对合作服务器进行调查,以检索由于扫描有效负载而发生的任何合作者交互的详细信息。Burp渗透器仪器进行的任何互动的详细信息都将返回到BURP。
  11. BURP向用户报告说,相关的输入项目正在应用程序传递给潜在的不安全API,并生成相关漏洞类型的信息扫描问题。如果发现了其他有关同一问题的证据(基于波段行为或其他合作者互动),则将这些证据汇总为一个问题。
Burp渗透器

由于BURP渗透器通过观察包含BURP合作者域的Burp有效载荷来工作,并通过指定的Burp Collaborator Server向BURP进行交流,因此使用BURP Impiltrator要求:

  • BURP执行扫描的实例配置为使用有效的工作BURP合作服务器,而目标应用程序和BURP都可以与该服务器进行交互。
  • 至少启用了使用基于协作的有效负载的一些扫描检查。理想情况下,这应该包括扫描检查外部服务交互。使用尽可能多的基于协作的扫描检查将最大化有效性。

BURP Instrator支持私人Burp合作服务器服务器的使用,并且Instrator Instrumentation知道根据Burp发送的有效负载发送的完整域名进行通信的合作服务器。但是,仅支持使用域名配置的私人协作服务器。不支持通过IP地址配置的私人协作服务器。

安装BURP渗透器

为了利用BURP渗透器,需要使用以下步骤将其安装在目标应用程序中:

从Burp Suite Professional中导出Burp渗透器安装程序。转到“打bur”菜单,选择Burp渗透器,选择要仪器的应用程序的类型,然后将文件保存到首选的位置。

笔记

在安装和运行BURP渗透器之前,请确保应用程序当前不运行,因为这可能会阻止磁盘上的字节码进行修改。

导出Burp渗透器安装程序

将BURP渗透器安装程序复制到包含编译应用程序字节的计算机上。这可能已经位于目标应用程序服务器上,也可能位于一台准备部署的计算机上。

在修补过程中,BURP渗透器需要知道应用程序字节码的位置。实现此目的的最简单方法是将渗透器安装程序放入应用程序的根文件夹中,并将其从那里作为工作目录运行。另外,您可以在安装过程中将路径指定到应用程序字节码。

将Burp渗透器安装程序复制到包含应用程序字节码的计算机上

确保用于执行BURP渗透器安装的用户上下文具有写入包含应用程序字节码的文件和文件夹的权限。

从命令行运行Burp渗透器。例如,对于Java应用程序,请输入Java -Jar burp_infiltrator_java.jar

默认情况下,BURP渗透器安装程序可以交互运行,并在安装过程中提出了一系列问题。另外,您可以运行它非交互

从命令行运行BURP渗透器

Burp渗透器对应用程序字节码进行补丁,以在调用可能不安全的API的位置注入仪器钩。

完成修补过程完成后,使用修改的字体模式以正常方式启动应用程序。

Burp渗透器修补字节码

最后,bepaly下载 申请。

Burp Inmtrator使Burp扫描仪能够报告被称为不安全的API,相关参数的全部值以及调用API时的申请调用堆栈。

Burp渗透器扫描目标申请

考虑因素

请注意与修补过程有关的以下注意事项:

  • 如果作为应用程序的一部分执行的代码位于多个文件位置,甚至在多个机器上,那么要实现覆盖范围的BURP渗透器,应与持有字节码的每个位置相对运行。
  • 请勿在包含未经测试的应用程序一部分的字体上的文件位置上运行BURP渗透器。
  • 对应用程序字节码进行的更改有可能破坏任何签名的代码组件上的签名。要成功使用带有签名代码组件的Burp渗透器,必须禁用应用程序中的代码签名验证。
  • Burp渗透器对应用程序字节码进行了不可逆的更改。为了恢复Burp渗透器所做的更改,有必要从原始未修饰的来源重新启动应用程序。
  • 如果目标应用程序已经使用BURP渗透器进行了修补,并且可以使用新版本的BURP渗透器,则可以简单地以正常方式运行更新的渗透器安装程序,然后重新启动应用程序。
  • 为了修补.NET应用程序,BURP渗透器利用字节码组件和拆卸工具。这些都可以是:(a)ilasmiLdasm分别使用.NET框架和Windows SDK工具分发的工具;或(b)ilasmmonodis用单声道分发的工具。您必须在修补过程中指定组件和拆卸工具的位置。请注意,汇编工具的版本必须匹配字节码针对的.NET框架的版本,以确保兼容性。
  • .NET代码不应用supressildasmattribute属性,因为这将防止Burp渗透器来仪器。
  • 修补.NET应用程序后,BURP渗透器安装程序可执行文件不应放在应用程序加载其字节码的文件夹中(通常为“ bin”)。如果安装程序留在此位置,则默认情况下,.NET将作为应用程序的一部分加载安装程序,这可能导致警告被记录甚至致命错误。

非相互作用的安装

您可以非连续性安装Burp渗透器。这支持各种用例。例如,CI管道可以自动将应用程序构建部署到登台服务器,安装Burp Instrator仪器,并使用打扫扫描仪

要非连续性运行BURP渗透器,请将以下参数添加到命令行:

- 非相互作用

在非交互模式下,BURP渗透器安装程序将使用默认值配置选项通常在交互模式下提示。您可以使用其他命令行参数在需要时覆盖这些默认值。使用以下命令行参数列出所有支持的选项:

- 帮助

在非连续性安装Burp渗透器之前,您应使用上述命令查看默认值的详细信息配置选项除非覆盖,否则将使用该方法,并确保根据您的要求使用正确的选项。

笔记

通过以非交互模式运行BURP渗透器安装程序,您被认为已阅读并同意交互式安装过程中显示的所有警告和免责声明。

配置选项

可以在此期间指定以下配置选项安装在交互式或使用命令行选项的情况下非相互作用安装:

  • 是否报告已达到潜在不安全API的相关参数的全部价值。
  • 当输入达到潜在的不安全API时,是否报告申请调用堆栈。
  • 是否允许通过未加密的HTTP与合作服务器通信。使用HTTPS降低了未经授权披露传输信息的风险。但是,根据仪器应用程序中可用的技术以及配置的协作服务器的功能,有时可能有必要使用未加密的通信。请注意,当使用HTTPS时,BURP渗透器尽最大努力使用可用的最新TLS密码。在某些目标系统(尤其是使用较旧技术的目标系统)上,最新可用的密码可能很容易受到适当位置的对手的已知攻击。
  • 是否仅允许通信仅用于指定的BURP合作服务器。在扫描过程中打扫扫描仪,有效载荷将包含BURP配置为使用的BURP Concomplorator Server的子域。如果您知道将使用特定的协作器服务器执行BURP扫描,则可以配置Burp渗透器以仅允许与该服务器进行通信。
  • 应应用渗透器修补的文件路径。修补程序始终递归地应用于子目录。

笔记

配置选项是在修补操作过程中指定的,并在修补操作对应用程序字节码进行的更改中应用。为了在进行修补后修改BURP渗透器的配置,有必要使用更新的选项重新运行BURP Impiltrator安装程序,然后重新启动应用程序。