使用 AppScan Enterprise 中的扫描属性配置安全扫描

应在预生产环境中(如登台服务器或“质量保证”服务器上)执行安全扫描。这样做有助于包含与执行安全扫描相关联的风险。预生成环境应该尽可能反映生产环境;应用程序在两个环境中应该具有相同的可执行文件,以便您知道在彻底测试暴露的应用程序。安全扫描还应该集成到软件开发生命周期 (SDLC) 过程中,以便可以在安全问题进入生产环境之前将其捕获。

ASE 工作流程扫描单击此区域获取有关创建应用程序库存的信息确定风险单击此区域获取有关分类问题的信息单击此区域获取有关评估业务风险的信息

开始之前

  1. 确保应用程序在开发或测试环境中。
  2. 与应用程序的所有者(开发者或 QA)建立时间窗口以扫描应用程序。应用程序必须已启动且正在运行,并且在您使用 AppScan® Enterprise Server 扫描该应用程序的时间段内保持稳定。在扫描期间不应对应用程序进行任何更改。
  3. 在最前面决定要执行手动探索还是自动搜索:
    • 手动探索意味着您将在配置中指示要测试的扫描的准确 URL(扫描将不会自动搜索发现新的 URL)。对于需要大量用户交互以浏览应用程序的 Web 应用程序或者如果您只想测试应用程序的特定区域,请使用该方法。
    • 自动搜寻意味着会为您配置扫描来自动发现要在 Web 应用程序中测试的更多 URL。对于具有许多静态链接并不需要大量用户交互的应用程序,请使用此方法。

过程

  1. 在“扫描对象”页面上,输入应用程序的起始 URL,然后单击添加。添加起始 URL 时请注意“状态”列。如果有绿色复选标记,则 AppScan® Enterprise Server 能够访问 Web 应用程序。如果您看到一条警告,则这可能表明您需要输入代理设置或 AppScan® Enterprise Server 的附加验证,才能访问 Web 应用程序。单击重新测试
  2. 如果 Web 应用程序需要特定代理设置或附加验证,请转至作业属性中的“连接”页面,选择代理 > 使用自定义代理设置,然后输入代理设置。
  3. 如果 Web 应用程序需要额外的平台验证,请在“平台验证”部分中选择扫描需要验证的页面,然后输入用户名和密码或选择服务帐户选项。
  4. 如果 Web 应用程序包含 HTML 登录,请转至“登录管理”页面以记录登录。单击已记录 > 记录登录
    1. Web 应用程序将在记录浏览器中启动。模拟登录并关闭浏览器窗口。
    2. 记录登录并关闭弹出窗口后,登录期间遇到的 URL 将列在“登录顺序 URL”页面中。单击保存以保存序列。这些 URL 应列在“登录管理”页面上。
    3. 从列表中选择一个 URL,然后单击“查看 HTTP 请求”(查看 HTTP 请求) 图标。
      注: 这将向您显示为该 URL 记录的完整 HTTP 请求。查找在 HTTP 请求中发送的 cookie。这些 cookie 在“Cookie”行中标识。为了在扫描期间成功进行安全测试,必须确定 Web 应用程序使用的所有会话 cookie。通过查看记录的登录 HTTP 请求中的这一行,可以了解 Web 应用程序的会话 cookie 名称。该行中的 cookie 并非都是会话 cookie。有时,您可能需要咨询 Web 应用程序的开发者。会话 cookie 通常包含“会话”或“标识”,但是在有些情况下,并没有包含。默认情况下, AppScan® Enterprise 将自动标识许多会话 Cookie 名称。
  5. 如果您已标识出 AppScan® Enterprise 遗漏的任何会话 Cookie 名称,则必须在扫描中配置会话 Cookie 名称。有两种方法可以添加 AppScan® Enterprise 遗漏的 Cookie。转至“参数和 Cookie”页面:
    1. 选择要跟踪的 cookie 或参数并单击“编辑参数和 Cookie”页面上的“跟踪”按钮。
    2. 单击添加 图标)。选择“Cookie”作为类型。可以输入全名或正则表达式作为名称。选择会话 ID:在扫描期间跟踪此参数AppScan® Enterprise Server 将跟踪此会话 Cookie 并在扫描期间根据需要更新该值。单击完成
  6. 如果您有其他任何需要予以填写以配置扫描的表单,请转至“扫描对象”页面。在“手动探索”部分中,单击添加现有项目 (添加现有项目) 启动“手动探索”。如果希望将扫描限制为手动探索,您还可以使用手动探索来手动选择 URL。Web 应用程序将在单独浏览器窗口中启动。在此窗口中模拟任何手动导航或表单填写,然后关闭窗口并保存表单结果。
    注: 可以使用手动浏览执行以下操作:
    • 记录 AppScan® Enterprise Server 自动爬网程序无法通过的任何附加功能;例如,表单填写或用户交互
    • 将您的扫描限制为仅扫描您已记录的这些 URL 和功能,而不让 AppScan® Enterprise Server 执行自动爬网
  7. 在“扫描对象”页面上,向下滚动到“其他服务器和域”列表。复审此列表,如果存在您不希望自动搜寻器在扫描期间浏览的其他域,请将其除去。
    注: 如果有域不包含在与您的测试策略相关联的“服务器组”中,将不对这些域进行测试。单击“安全”页面上的显示测试策略详细信息,以查看适用于所选测试策略的服务器组和 URL 或 IP 地址。没有指示表明不测试未授权的 URL,除非那些域在基于此作业的任何报告中都没有结果。请确保起始 URL 包含在与所选的测试策略相关联的服务器组中。
  8. 在“扫描对象”页面上的 DAST 易受攻击的第三方组件检测部分下,默认选中报告已标识组件中的漏洞复选框,这使得 AppScan 能够报告 AppScan 标识的第三方组件中的漏洞。
  9. 在“安全性”页面上,输入安全测试选项:
    • 如果您想要执行静态 JavaScript 分析以检测一系列客户端问题(主要是基于 DOM 的跨站点脚本),请保持 JavaScript Analyzer 复选框处于选中状态。请参阅JavaScript 源代码分析的工作方式
    • 如果您正在扫描的 Web 应用程序将在多次登录尝试失败后将用户锁定,请清除包括登录和注销页面测试复选框。这将防止 AppScan® Enterprise Server 在扫描期间被锁定。
    • 选择安全测试策略。
      注: 您只能选择基于已由产品管理员分配给您的测试策略的测试。如果您未创建此作业,那么它只能执行与创建该作业的“作业管理员”相关联的测试。但是,您可以通过获取作业的所有权(作业的“作业属性”页面)来更改您可用的测试策略以及其可以执行的测试。
  10. 转至“探索选项”页面:
    1. 如果您希望扫描执行自动扫描并查找其他 URL,请选择不应用页面限制
    2. 如果您希望扫描仅探索和测试您记录的登录和手动探索,请选择指定的 URL 限制
    3. 如果您正在执行自动爬网,并且您的 Web 应用程序使用 JavaScript 动态构建 URL,请选择执行 JavaScript 以发现 URL 和动态内容
  11. 单击保存以保存您的选项并退出作业属性。