You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Current »

在本章节中:

前言

Parasoft Burp 套件扩展包允许你使用带有 Burp 套件 web 应用程序安全性评估工具的 SOAtest 测试场景,对 APIs 和基于浏览器的 web 应用程序执行安全性和渗透测试。该软件包包含一个安装在 Burp 套件中的“Burp 扩展器”,以及 SOAtest 中使用的两个工具:  

  • Burp 套件分析工具:将数据发送到 Burp 套件进行安全分析,并在 SOAtest 的用户界面中报告 Burp 套件的发现。  
  • Burp 套件报告程序:生成捕获安全分析结果的 Burp 套件报告。 

要求

  • SOAtest 9.10 或更高版本  
  • 至少具有一个浏览器回放工具或测试客户端(例如,SOAP、REST、EDI 或消息传递客户端)的 SOAtest .tst  
  • Burp 套件专业版 1.7.03 或更高版本 

安装 SOAtest 工具

SOAtest 工具被打包到 soatestburpsuitetools.jar 文件中,该文件可以从 UI 或命令行安装。 

UI 安装指南  

  1. 选择 Parasoft> 首选项。  
  2. 在系统属性首选项页面,单击 添加 JARs。  
  3. 浏览并选择 soatestburpsuitetools.jar 文件,将其添加到 SOAtest 类路径。

命令行安装指南 

将 soatestburpsuitetools.jar 文件添加到 localsettings 属性文件中的 system.properties.classpath 属性中。

例如: 

system.properties.classpath=<path to jar>/soatestburpsuitetools.jar 

安装 Burp 扩展器

按照标准的 Burp 扩展器安装过程安装 Parasoft SOAtest Burp 扩展器(burpsuiteextender.jar)。

  1. 启动 Burp 套件 UI。 
  2. 在 Extender> Extensions 选项卡中,单击 Add


     
  3. 在扩展详细信息下,确保扩展类型设置为 Java,然后浏览扩展文件(.jar)字段的 burpextension.jar 文件。 


     
  4. 单击 Next。你应该在 Output 选项卡中看到一条消息,其中说的是“Parasoft SOAtest Burp Extender”。


     
  5. 验证在错误选项卡中没有报告错误,然后单击 Close。  

使用概要

在 Burp 套件方面,Parasoft SOAtest Burp 扩展器使用一个简单的 HTTP 服务器扩展了 Burp 套件,该服务器允许 Burp 套件与 SOAtest Burp 套件分析工具通信。在 SOAtest 方面,在你希望使用 Burp 套件进行测试的每个 SOAtest API/浏览器测试场景中,都会添加 Burp 套件分析工具。 

在执行时,每个带有附加 Burp 套件分析工具的测试都与 AUT 正常交互(见下面 #1),然后将数据发送到 Burp 套件进行安全分析(见下面 #2)。Burp 套件与 AUT 交互执行分析。 

 

在执行每个测试时,结果被发送到 SOAtest 的质量任务视图(见下面 #3)。这些结果可以保存为 XML 报告,然后上传到 Parasoft DTP(请查阅 连接到 DTP)。 

在执行 Burp 套件报告器工具的任何地方,都会生成具有高级安全细节的 Burp 套件 HTML 报告(见下面 #4)。 

因为 Burp 套件分析可能影响功能测试场景的行为和需要更长的时间比典型的测试场景运行,所以我们强烈建议你保持测试场景的两个不同副本:一个用于功能测试运行,另一个用于你的安全测试运行。每当你想在应用程序上执行安全性测试时,请复制功能测试场景的最新版本,然后将 Burp 套件工具添加到该副本中。这样,你的原始测试仍然可以用于功能测试—没有任何行为或性能影响。 

一般的工作流程是:  

  1. 确定要用于安全测试的测试场景并复制它们。你可以正常地继续执行原始的功能测试场景。
  2. 将 Burp 套件工具添加到复制的测试场景中,然后作为安全测试执行它们。  
  3. 当应用程序发生更改时,只更新功能测试场景。当你准备运行相应的安全测试场景时,重复上面的过程,从最新的一组功能测试中复制,然后为安全测试配置副本。 

为 Burp 套件测试配置测试场景

  1. 在测试场景中为每个浏览器回放工具或测试客户端附加一个作为输出工具的 Burp 套件分析工具(比如, SOAP 客户端、 REST 客户端EDI 客户端消息传递客户端)。对于测试客户端,请确保将其附加为流量对象输出(请参阅 添加测试输出)。 

    添加多个输出

    将输出添加到测试场景中的所有工具的最快方法是右键单击测试场景的顶部节点,选择 Add Multiple Outputs,然后选择以下选项之一:

    • 对于测试客户端,选择左边的 Both> Traffic Object ,然后选择右边的 Burp Suite Analysis Tool 。 

    • 对于浏览器回放工具,选择左边的 Browser Contents (对于测试客户端),然后选择右边的 Burp Suite Analysis Tool 。 

  2. 在你希望生成报告的场景中,随时添加一个 Burp 套件报告器工具作为常规(而不是输出)工具。执行此工具时,将创建一个 Burp 套件报告,以包含自执行开始(如果这是第一个 Burp 套件报告工具)以来报告的安全性分析结果,或者自执行前一个 Burp 套件报告工具以来报告的安全性分析结果。

    例如,假定你有一个包含 3 个测试客户端的 .tst。如果你想为所有 3 个测试场景生成 1 个带有安全分析结果的报告,那么应该在第三个测试场景的末尾添加 1 个 Burp 套件报告程序工具。但是,如果你想为每个测试场景创建一个单独的报告,则可以在每个测试场景的末尾添加 1 个 Burp 套件报告器工具,总共有 3 个 Burp 套件报告器工具。

    如果想生成一个在运行给定项目或目录中所有 .tsts 后的报告,则你可能想要创建一个仅包含 Brup 套件报告器工具的 .tst 文件,并将其命名为执行的最后一个 .tst 文件(例如,“zzz_reporting.tst”,因为 .tst 文件是按字母顺序运行的)。 
     
  3. 配置 Burp 套件报告器工具的报告位置选项,以指示应该将 Burp 套件 HTML 报告保存在何处。如果字段为空,则将报告保存到 [${BurpSuiteWorkingDirectory}/SOAtestBurpExtender/report_YYYY-MM-DD_HH-MM-SS.html] 

执行测试

你可以在 为 Burp 套件配置了测试场景之后执行安全性测试。  

  1. 启动 Burp 套件。  
  2. 在 Burp 套件的 Target> Scope configuration 页面中输入 URL 模式来定义目标范围,否则将忽略 SOAtest 分析请求。  
  3. 执行为 Burp 套件测试和报告配置的 SOAtest 的测试场景。 

当测试执行完成时,相关的 Burp 套件报告将保存在指定的报告目录中。 

与使用 Reporter 工具直接从 Burp 套件生成的报告相比,SOAtest 质量任务视图和任何由 SOAtest 生成的报告可能显示更多的问题。这是因为 SOAtest 显示了未过滤的问题列表,其中一些问题可能是重复的。然而,Burp 套件只显示它认为唯一的问题,而将它认为是重复的问题组合在一起。 

使用非默认端口连接到 Burp 套件 

默认情况下,Burp 套件分析工具期望 Burp 套件扩展在本地主机端口 9898 上公开它的简单 HTTP 服务器,而 Burp 套件和 SOAtest 应该在同一台机器上。如果使用不同的端口,则需要在 Burp 套件扩展和 SOAtest 中运行的 Burp 套件分析工具中重新配置主机/端口。

配置 Burp 套件扩展的端口  

在启动 Burp 套件时传递以下参数:

java -Dburpsuite.extension.port=<new value> -jar burpsuite_pro_v-1.7.03

配置 SOAtest Burp 套件分析工具使用的端口  

在启动 SOAtest 时传递以下参数:

soatest.exe -J-Dburpsuite.extension.port=<new value> 

调整超时设置 

在自动化场景中,你可能需要配置超时设置来处理 Burp 套件需要很长时间才能完成分析或变得无响应的情况。这将允许 SOAtest 测试场景继续,即使 Burp 套件还没有完成它的分析。如果不配置超时,则不会设置超时,并且直到从 Burp 套件接收到所有结果时,Burp 套件分析工具才会完成。 

在启动 SOAtest 时传递以下参数以配置超时:

soatest.exe -J-Dburpsuite.extension.timeout=<value> 

该值以分钟为单位。值 -1 指示不应应用超时。 

更改日志级别 

默认情况下,两个 Burp 套件工具的日志级别都是警告。如果你喜欢记录到控制台和事件监视视图的更高或更低级别的详细信息,则可以调整工具的日志级别设置。 

配置严重级别

可以配置 Burp 套件分析工具报告的最低严重级别。默认情况下,报告的最低严重级别较低。因此,所有低、中、高违规都被报告。你可以通过在启动 SOAtest 时传递以下参数来更改默认值:

-J-Dburpsuite.extension.severity.filter=<severity>

可以设置以下安全级别:

  • 信息

配置更高级别的严重性意味着将忽略不太严重的错误。严重级别不区分大小写。

第三方内容 

此扩展包括来自第三方的资源项,如下:  

更多的许可详情可在该插件的 licenses 文件夹中获得。 


  • No labels