测试和部署 ATP - Amazon WAF、Amazon Firewall Manager 和 Amazon Shield Advanced
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

测试和部署 ATP

本节提供在您的站点配置和测试Amazon WAF欺诈控制账户接管预防 (ATP) 实施的一般指导。您选择遵循的具体步骤将取决于您的需求、资源和收到的网络请求。

此信息是上提供的有关测试和调整的一般信息的补充测试和调整您的Amazon WAF保护措施

注意

Amazon托管规则旨在保护您免受常见的 Web 威胁的攻击。根据文档进行使用时,Amazon托管规则组将为您的应用程序添加另一层安全性。但是,Amazon托管规则组并非用于取代您的安全责任,这些责任由您所选择的Amazon资源决定。请参阅责任共担模式,以确保妥善保护 Amazon 中的资源。

生产流量风险

在为生产流量部署 ATP 实现之前,请在暂存或测试环境中对其进行测试和调整,直到您对流量的潜在影响感到满意。然后使用生产流量在计数模式下测试和调整规则,然后再启用这些规则。

Amazon WAF提供可用于验证 ATP 配置的测试凭证。在以下步骤中,您将配置测试 Web ACL 以使用 ATP 托管规则组,配置规则以捕获规则组添加的标签,然后使用这些测试凭据尝试登录。您将通过检查登录尝试的亚马逊 CloudWatch 指标,验证您的网络 ACL 是否已正确管理了该尝试。

本指南适用于一般知道如何创建和管理Amazon WAF Web ACL、规则和规则组的用户。这些主题将在本指南的前几部分所涵盖的。

配置和测试Amazon WAF欺诈控制账户接管预防 (ATP) 的实施

首先在测试环境中执行这些步骤,然后在生产环境中执行这些步骤。

  1. 在计数模式下添加防Amazon WAF欺诈控制账户接管 (ATP) 管理规则组
    注意

    使用此托管规则组时,需要向您收取额外费用。有关更多信息,请参阅 Amazon WAF 定价

    将Amazon托管规则组AWSManagedRulesATPRuleSet添加到新的或现有的 Web ACL 中,并对其进行配置,使其不会改变当前 Web ACL 的行为。有关此规则组的规则和标签的详细信息,请参阅Amazon WAF欺诈控制账户收购预防 (ATP) 规则组

    • 添加托管规则组时,对其进行编辑并执行以下操作:

      • 规则组配置窗格中,提供应用程序登录页面的详细信息。ATP 规则组使用此信息来监控登录活动。有关更多信息,请参阅将 ATP 托管规则组添加到您的 Web ACL

      • 在 “规则” 窗格中,打开 “覆盖所有规则操作” 下拉列表并选择Count。使用此配置,将根据规则组中的所有规则Amazon WAF评估请求,仅计算结果的匹配结果,同时仍会为请求添加标签。有关更多信息,请参阅覆盖规则组中的规则操作

        通过此改写,您可以监控 ATP 管理规则的潜在影响,以确定是否要添加例外,例如内部用例的例外。

    • 放置规则组,使其根据您在 Web ACL 中的现有规则进行评估,优先级设置在数字上高于您已经使用的任何规则或规则组。有关更多信息,请参阅Web ACL 中规则和规则组的处理顺序

      这样,您当前对流量的处理就不会受到干扰。例如,如果您有检测恶意流量(例如 SQL 注入或跨站点脚本)的规则,他们将继续检测并记录这些流量。或者,如果您的规则允许已知的非恶意流量,则它们可以继续允许该流量,而不必被 ATP 管理规则组阻止。在测试和调整活动期间,您可能会决定调整处理顺序。

  2. 为 Web ACL 启用采样、记录和指标

    根据需要,配置 Web ACL 的日志记录,并启用采样和 Amazon CloudWatch 指标。您可以使用这些可见性工具来监控 ATP 托管规则组与您的流量的交互。

  3. 将 Web ACL 与资源相关联

    如果 Web ACL 尚未与测试资源关联,请将其关联。有关信息,请参阅 将 Web ACL 与Amazon资源关联或取消关联

  4. 监控流量和 ATP 规则匹配情况

    确保您的正常流量畅通,并且 ATP 托管规则组规则正在为匹配的 Web 请求添加标签。您可以在日志中看到标签,也可以查看亚马逊指标中的 ATP 和标签 CloudWatch 指标。在日志中,您在规则组中替换为计数的规则显示在 with seaction truleGroupList to count 中,并overriddenAction表示您改写了已配置的规则操作。

  5. 测试规则组的凭证检查功能

    尝试使用测试泄露的凭据进行登录,并检查规则组是否符合预期。

    1. 使用以下Amazon WAF测试凭证对登录到受保护资源的登录页面:

      • 用户:WAF_TEST_CREDENTIAL@wafexample.com

      • 密码:WAF_TEST_CREDENTIAL_PASSWORD

      这些测试凭证被归类为已泄露的凭据,ATP 托管规则组将在登录请求中添加awswaf:managed:aws:atp:signal:credential_compromised标签,您可以在日志中看到该标签。

    2. 在 Web ACL 日志中,查找测试登录 Web 请求的日志条目labels字段中的awswaf:managed:aws:atp:signal:credential_compromised标签。有关日志记录的信息,请参阅记录 Web ACL 流量

    在验证规则组按预期捕获泄露的证书后,您可以根据受保护资源的需要采取措施配置其实现。

  6. 对于 CloudFront 发行版,测试规则组的登录失败管理

    1. 针对您为 ATP 规则组配置的每个故障响应标准运行测试。两次测试之间至少等待 10 分钟。

      要测试单个失败标准,请在响应中使用该条件确定会失败的登录尝试。然后,在不到 10 分钟的时间内,从单个客户端 IP 地址执行至少 10 次失败的登录尝试。

      在前 6 次失败后,volumetric 失败的登录规则应开始与您的其余尝试进行匹配,对其进行标记和计数。由于延迟,该规则可能会错过前一两个。

    2. 在 Web ACL 日志中,查找测试登录 Web 请求的日志条目labels字段中的awswaf:managed:aws:atp:aggregate:volumetric:ip:failed_login_response:high标签。有关日志记录的信息,请参阅记录 Web ACL 流量

    这些测试通过检查失败的登录次数是否超过规则的阈值来验证您的失败标准是否与您的响应相符VolumetricIpFailedLoginResponseHigh。达到阈值后,如果您继续从同一 IP 地址发送登录请求,则规则将继续匹配,直到失败率降至阈值以下。当超过阈值时,该规则会匹配从 IP 地址成功或失败的登录。

  7. 自定义 ATP 网络请求处理

    根据需要,添加您自己的规则,明确允许或阻止请求,以更改 ATP 规则处理请求的方式。

    例如,您可以使用 ATP 标签来允许或阻止请求,或者自定义请求处理。您可以在 ATP 托管规则组之后添加标签匹配规则,以筛选已贴标签的请求以进行要应用的处理。测试后,将相关的 ATP 规则保持在计数模式,并在自定义规则中保留请求处理决策。有关示例,请参阅 ATP 示例:对丢失和泄露的凭据进行自定义处理

  8. 删除您的测试规则并启用 ATP 托管规则组设置

    根据您的情况,您可能已经决定要将某些 ATP 规则保留在计数模式。对于要按照规则组内部的配置运行的规则,请在 Web ACL 规则组配置中禁用计数模式。完成测试后,您还可以删除测试标签匹配规则。

  9. 监视和调谐

    为确保按您的需要处理 Web 请求,请在启用要使用的 ATP 功能后密切监控您的流量。根据需要调整行为,在规则组上改写规则数并使用您自己的规则。

完成对 ATP 规则组实现的测试后,我们建议您将Amazon WAF ATP JavaScript SDK 集成到浏览器登录页面中,以增强检测能力。 Amazon WAF还提供用于集成 iOS 和安卓设备的移动 SDK。有关集成开发工具包的更多信息,请参阅Amazon WAF客户机应用程序集成