扫描实时生产环境

通过 AppScan 扫描实时站点之前应考虑以下风险和建议。

扫描实时站点时,可使用预定义“生产站点”模板。该模板包含了特别选择的“生产站点”测试策略,以及设计用于最小化实时站点被破坏的风险或导致实际用户的“拒绝服务”风险的配置设置。

如果选择使用您自己的配置或测试策略,以下部分可帮助您有效地配置扫描。

数据库可能会被扫描期间发送的人工信息所充满

可通过采取以下预防措施来减少上述情况造成的影响:

  • 禁用自动表单填充(扫描配置 > 自动表单填充 > 第一个复选框)。

    这将确保 AppScan® 不会自动填写表单(从而避免提交可能会大量涌入数据库、公告牌或在线论坛系统的数据),也不会向管理员或版主帐户发送不需要的电子邮件。但是,您应该注意,这样做将限制 AppScan Standard 到达通过提交表单来访问的站点区域的能力。在此运行方式下,AppScan 将仅扫描可通过点击链接(带有或不带参数)来访问的站点区域。

  • 创建供 AppScan 使用的测试帐户。

    使用测试帐户可更加轻松地跟踪数据库更改(例如,确保服务实际上未被订购),并帮助站点管理员在扫描后清理站点。

    创建帐户时请考虑以下建议:
    • 将数据库访问限制为仅测试记录,以便可以恢复已修改的记录。
    • 确保将删除测试帐户所创建的新纪录。
    • 确保将忽略测试帐户的采购订单(或其他交易)。
    • 如果交易具有某种影响(如处理库存时),那么仅允许对测试记录的帐户访问权。
    • 如果站点包含论坛,那么将仅允许对测试论坛的测试帐户访问权,以使真实客户不会看到在测试过程中创建的测试。
    • 如果站点具有针对不同帐户的不同特权,请设置多个具有不同特权的测试帐户。这将确保更加全面地扫描站点。
    • 请不要创建具有管理员级别访问权的测试帐户。

电子邮件泛滥风险

测试使用电子邮件通知的页面时,AppScan 会生成许多请求并可能使站点的电子邮件服务器超负荷。

以下一个或多个建议可帮助解决此问题:

  • 临时更改所测试的页面上的电子邮件地址,以便该电子邮件发送到无效的电子邮件地址。
  • 如果可行,请配置 AppScan 以从生产扫描中排除这些页面。
  • 一次仅扫描一台 Web 服务器,并避免其在扫描期间连接到 SMTP 服务器。
  • 如果决定保持启用“自动表单填写”,请将其配置为在电子邮件字段中插入唯一值,以便收件人可轻松识别由 AppScan 生成的电子邮件。

通过代理扫描

如果可能,请避免通过代理扫描。尽管支持这样的操作,但代理有时会使结果难以理解。

扫描被锁定在应用程序外的风险

某些应用程序配置为在一定数量的错误登录尝试后将用户锁定在外。如果在扫描期间发生此情况,那么 AppScan 显然将无法完成扫描。

要避免这种情况:

  • 禁用将测试发送到登录和注销页面(扫描配置 > 测试选项)。

导致应用程序故障的风险

为避免 AppScan 导致实时应用程序发生故障的风险,您可能需要停用测试策略中的侵入式测试。这将确保不会发送“拒绝服务”、“缓冲区溢出”或其他可能导致应用程序或 Web 服务器发生故障的测试。

重要: Web 应用程序通常包含只能通过侵入式测试发现的漏洞。建议您不要完全忽略侵入测试。请改为与 Web 站点所有者或管理员协作来测试应用程序是否包含这些种类的漏洞,同时或许将扫描安排在非高峰时间(应用程序可能空闲的时候)执行。

要禁用当前测试策略中的侵入测试,请执行以下操作:

  1. 打开配置 > 测试策略
  2. 单击侵入列,以将所有侵入测试分组到一起。
  3. 向下滚动侵入测试(“侵入”值为“Yes”的测试),并取消选择所有当前已选择的测试,以从扫描中将其排除。