使用 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”选为类型。可以输入全名或正则表达式作为名称。选择 会话标识:扫描过程中跟踪此参数 AppScan® 扫描期间,Enterprise Server 将跟踪此会话 cookie 并在需要时更新值。单击完成
  6. 如果您有其他任何需要予以填写以配置扫描的表单,请转至“扫描对象”页面。在“手动探索”部分中,单击添加现有项添加现有项)以启动手动探索。如果希望将扫描限制为手动探索,您还可以使用手动探索来手动选择 URL。Web 应用程序将在单独浏览器窗口中启动。在此窗口中模拟任何手动导航或表单填写,然后关闭窗口并保存表单结果。
    注: 可以使用手动浏览执行以下操作:
    • 记录 AppScan® Enterprise Server 自动搜寻器不会处理的任何其他功能;例如,表单填写或用户交互
    • 将扫描限制为仅扫描您已记录的那些 URL 和功能并且不让 AppScan® Enterprise Server 执行自动搜寻
  7. 在“扫描对象”页面上,向下滚动到“其他服务器和域”列表。复审此列表,如果存在您不希望自动搜寻器在扫描期间浏览的其他域,请将其除去。
    注: 如果有域不包含在与您的测试策略相关联的“服务器组”中,将不对这些域进行测试。单击“安全性”页面上的显示测试策略详细信息以查看适用于所选测试策略的服务器组和 URL 或 IP 地址。没有指示表明不测试未授权的 URL,除非那些域在基于此作业的任何报告中都没有结果。请确保起始 URL 包含在与所选的测试策略相关联的服务器组中。
  8. 在“安全性”页面上,输入安全测试选项:
    • 如果要执行静态 JavaScript 分析以检测一系列客户机端问题(主要是基于 DOM 的跨站点脚本编制),请保持 JavaScript Analyzer 复选框处于选中状态。请参阅JavaScript 源代码分析的工作方式
    • 如果要扫描的 Web 应用程序在多次登录尝试失败后将锁定用户,请清除包含对登录和注销页面的测试复选框。这将避免 AppScan® Enterprise Server 在扫描期间被锁定。
    • 选择安全测试策略。
      注: 您只能选择基于已由产品管理员分配给您的测试策略的测试。如果您未创建此作业,那么它只能执行与创建该作业的“作业管理员”相关联的测试。但是,您可以通过获取作业的所有权(作业的“作业属性”页面)来更改您可用的测试策略以及其可以执行的测试。
  9. 转至“探索选项”页面:
    1. 如果希望扫描执行自动扫描和查找其他 URL,请选择不应用页面限制
    2. 如果要扫描仅浏览和测试已记录的登录和手动探索,请选择指定的 URL 限制
    3. 如果您要执行自动搜寻,并且 Web 应用程序使用 JavaScript 来动态构建 URL,请选择执行 JavaScript 以发现 URL 和动态内容
  10. 单击保存以保存选项并退出作业属性。