介绍 AWS WAF 的全新控制台体验
现在,您可以使用更新后的体验访问控制台中任意位置的 AWS WAF 功能。有关更多详细信息,请参阅 使用更新的控制台体验。
测试和部署 ACFP
本节提供有关为您的网站配置和测试 AWS WAF 欺诈控制账账户创建欺诈预防(ACFP)实施的一般指导。您选择遵循的具体步骤将取决于您的需求、资源和收到的 web 请求。
此信息是对 测试和调整您的 AWS WAF 保护 中提供的有关测试和调整的一般信息的补充。
注意
AWS 托管规则旨在保护您免受常见的 web 威胁的攻击。应根据文档使用 AWS 托管规则的规则组,它为您的应用程序添加另一层安全性。但是,AWS 托管规则的规则组并非用于取代您的安全责任,安全责任由所选 AWS 资源决定。请参阅责任共担模式
生产流量风险
在为生产流量部署 ACFP 实施之前,请在暂存或测试环境中对其进行测试和调整,直到您能够适应对流量的潜在影响。然后,在启用之前,在计数模式下使用生产流量对规则进行测试和调整。
AWS WAF 提供了可用于验证 ACFP 配置的测试凭证。在以下步骤中,您将配置测试保护包(web ACL)以使用 ACFP 托管规则组,配置规则以捕获规则组添加的标签,然后使用这些测试凭证尝试创建账户。您可以通过查看账户创建尝试的 Amazon CloudWatch 指标,验证您的保护包(web ACL)是否对该尝试进行了正确管理。
本指导适用于大致了解如何创建和管理 AWS WAF 保护包(web ACL)、规则和规则组的用户。这些主题将在本指南的前面章节中介绍。
配置和测试 AWS WAF 欺诈控制账户创建欺诈预防(ACFP)实施方案
首先在测试环境中执行这些步骤,然后在生产环境中执行这些步骤。
-
在计数模式下添加 AWS WAF 欺诈控制账户创建欺诈预防(ACFP)托管规则组
注意
使用此托管规则组时,您需要额外付费。有关更多信息,请参阅 AWS WAF 定价
。 将 AWS 托管规则组
AWSManagedRulesACFPRuleSet添加到新的或现有的保护包(web ACL)中,并对其进行配置,使其不会改变当前保护包(web ACL)的行为。有关此规则组的规则和标签的详细信息,请参阅 AWS WAF 欺诈控制账户创建欺诈预防(ACFP)规则组。-
添加托管规则组时,对其进行编辑并执行以下操作:
-
在规则组配置窗格中,提供您的应用程序的账户注册和创建页面的详细信息。ACFP 规则组使用此信息来监控登录活动。有关更多信息,请参阅 将 ACFP 托管规则组添加到您的 web ACL。
-
在规则窗格中,打开覆盖所有规则操作下拉列表并选择 Count。使用此配置,AWS WAF 可以根据规则组中的所有规则评估请求,并仅计算结果的匹配项,同时仍将标签添加到请求中。有关更多信息,请参阅 覆盖规则组的规则操作。
通过此覆盖,您可以监控 ACFP 托管规则的潜在影响,以确定是否要添加例外,例如内部使用案例的例外。
-
-
定位规则组,使其按照您在保护包(web ACL)中的现有规则进行评估,优先级设置在数值上要高于您已在使用的任何规则或规则组。有关更多信息,请参阅 设置规则优先级。
这样,您当前的流量处理就不会中断。例如,如果您有检测恶意流量的规则,例如 SQL 注入或跨站脚本,它们将继续检测并记录这些流量。或者,如果您的规则允许已知的非恶意流量,则它们可以继续允许该流量,而不必被 ACFP 托管规则组阻止。在测试和调整活动期间,您可能会决定调整处理顺序。
-
-
实施应用程序集成软件开发工具包
将 AWS WAF JavaScript 软件开发工具包集成到浏览器的账户注册和账户创建路径中。AWS WAF 还提供用于集成 iOS 和 Android 设备的移动 SDK。有关集成软件开发工具包的更多信息,请参阅 AWS WAF 中的客户端应用程序集成。有关此建议的信息,请参阅 将应用程序集成软件开发工具包与 ACFP 配合使用。
注意
如果您无法使用应用程序集成 SDK,则可以通过在保护包(web ACL)中编辑 ACL 并删除您在
AllRequests规则上设置的覆盖来测试 ACFP 规则组。这将启用规则的 Challenge 操作设置,以确保请求中包含有效的质询令牌。首先在测试环境中执行此操作,然后在生产环境中要格外小心。这种方法有可能阻止用户。例如,如果您的注册页面路径不接受
GET文本/html 请求,则此规则配置可以有效地阻止注册页面上的所有请求。 -
为保护包(web ACL)启用日志记录和指标
根据需要为保护包(web ACL)配置日志记录、Amazon Security Lake 数据收集、请求采样和 Amazon CloudWatch 指标。您可以使用这些可见性工具来监控 ACFP 托管规则组与您的流量的交互情况。
-
有关日志记录的信息,请参阅AWS WAF 保护包(web ACL)流量日志记录。
-
有关 Amazon Security Lake 的信息,请参阅《Amazon Security Lake 用户指南》中的什么是 Amazon Security Lake 以及从 AWS 服务中收集数据。
-
有关 Amazon CloudWatch 指标的更多信息,请参阅 使用 Amazon CloudWatch 监控。
-
有关 web 请求采样的信息,请参阅 查看 web 请求示例。
-
-
将保护包(web ACL)与资源关联
如果保护包(web ACL)尚未与测试资源关联,请将其关联。有关信息,请参阅 将保护与 AWS 资源关联或取消关联。
-
监控流量和 ACFP 规则匹配情况
确保您的正常流量畅通,并且 ACFP 托管规则组规则正在为匹配的 web 请求添加标签。您可以在日志中看到标签,也可以在 Amazon CloudWatch 指标中查看 ACFP 和标签指标。在日志中,您在规则组中覆盖计数的规则会显示在
ruleGroupList中,action设置为计数,overriddenAction表示您覆盖的已配置规则操作。 -
测试规则组的凭证检查功能
尝试使用已泄露的凭证创建账户,并检查规则组是否按预期与这些凭证匹配。
-
访问受保护资源的账户注册页面,然后尝试添加新账户。使用以下 AWS WAF 测试凭证对并输入任意测试
-
用户:
WAF_TEST_CREDENTIAL@wafexample.com -
密码:
WAF_TEST_CREDENTIAL_PASSWORD
这些测试凭证被归类为已泄露的凭证,ACFP 托管规则组会将
awswaf:managed:aws:acfp:signal:credential_compromised标签添加到账户创建请求中,您可以在日志中看到该标签。 -
-
在您的保护包(web ACL)日志中,在测试账户创建请求的日志条目
labels字段中查找awswaf:managed:aws:acfp:signal:credential_compromised标签。有关日志记录的信息,请参阅AWS WAF 保护包(web ACL)流量日志记录。
确认规则组按预期捕获被泄露的凭证后,您可以采取措施根据受保护资源的需要配置其实施。
-
-
对于 CloudFront 分配,请测试规则组对批量账户创建尝试的管理
针对您为 ACFP 规则组配置的每个成功响应条件运行此测试。两次测试之间应至少等待 30 分钟。
-
对于您的每个成功条件,请确定在响应中符合成功条件的账户创建尝试。然后,在一次客户端会话中,不到 30 分钟内应至少成功完成 5 次账户创建尝试。用户通常只能在您的网站上创建一个账户。
首次成功创建账户后,该
VolumetricSessionSuccessfulResponse规则应开始与您的其余账户创建响应进行匹配,根据您的规则操作覆盖对其进行标记并进行计数。由于延迟,该规则可能会错过前一两个。 -
在您的保护包(web ACL)日志中,在测试账户创建 web 请求的日志条目
labels字段中查找awswaf:managed:aws:acfp:aggregate:volumetric:session:successful_creation_response:high标签。有关日志记录的信息,请参阅AWS WAF 保护包(web ACL)流量日志记录。
这些测试通过检查规则汇总的成功计数是否超过规则的阈值,来验证您的成功条件是否与您的响应相符。达到阈值后,如果您继续从同一会话发送账户创建请求,则该规则将继续匹配,直到成功率降至阈值以下。当超过阈值时,该规则会匹配来自会话地址的成功或失败的账户创建尝试。
-
-
自定义 ACFP web 请求处理
根据需要,添加明确允许或阻止请求的规则,以更改 ACFP 规则处理请求的方式。
例如,您可以使用 ACFP 标签来允许或阻止请求或自定义请求处理。您可以在 ACFP 托管规则组之后添加标签匹配规则,以筛选要应用的处理的已标记请求。测试后,将相关的 ACFP 规则保持在计数模式,并在自定义规则中维护请求处理决策。有关示例,请参阅ACFP 示例:针对被泄漏凭证的自定义响应。
-
移除您的测试规则并启用 ACFP 托管规则组设置
根据您的情况,您可能决定将某些 ACFP 规则保留为计数模式。对于要按照规则组内的配置运行的规则,请在保护包(web ACL)规则组配置中禁用计数模式。完成测试后,您还可以移除测试标签匹配规则。
-
监控和调整
为确保按照您的要求处理 web 请求,请在启用您打算使用的 ACFP 功能后密切监控流量。根据需要调整行为,使用规则组上的规则计数覆盖和您自己的规则。
完成 ACFP 规则组实施测试后,如果您尚未将 AWS WAF JavaScript 软件开发工具包集成到浏览器的账户注册和账户创建页面,我们强烈建议您进行此项操作。AWS WAF 还提供用于集成 iOS 和 Android 设备的移动软件开发工具包。有关集成软件开发工具包的更多信息,请参阅 AWS WAF 中的客户端应用程序集成。有关此建议的信息,请参阅 将应用程序集成软件开发工具包与 ACFP 配合使用。