

**引入全新的主机体验 Amazon WAF**

现在，您可以使用更新的体验访问控制台中任意位置的 Amazon WAF 功能。有关更多详细信息，请参阅[使用控制台](https://docs.amazonaws.cn/waf/latest/developerguide/working-with-console.html)。

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

# Amazon WAF 欺诈控制账户创建防作弊 (ACFP) 规则组
<a name="aws-managed-rule-groups-acfp"></a>

本节说明了 Amazon WAF 欺诈控制账户创建防作弊 (ACFP) 托管规则组的作用。

VendorName:`AWS`，名称：`AWSManagedRulesACFPRuleSet`，WCU：50

**注意**  
本文档包含此托管规则组的最新静态版本。我们在 [Amazon 托管规则变更日志](aws-managed-rule-groups-changelog.md) 的更改日志中报告版本变更。有关其他版本的信息，请使用 API 命令[DescribeManagedRuleGroup](https://docs.amazonaws.cn/waf/latest/APIReference/API_DescribeManagedRuleGroup.html)。  
我们在 Amazon 托管规则组中发布的规则信息旨在为您提供使用规则所需的信息，而不会向不良行为者提供他们规避规则所需的信息。  
如果您需要更多信息，请联系 [Amazon Web Services 支持 中心](https://console.amazonaws.cn/support/home#/)。

F Amazon WAF raud Control 账户创建防欺诈 (ACFP) 管理的规则组可以标记和管理可能属于欺诈性账户创建尝试的请求。规则组通过检查客户端发送到应用程序的注册和账户创建端点的账户创建请求来实现此目的。

ACFP 规则组以各种方式检查账户创建尝试，让您可以查看和控制潜在的恶意交互。规则组使用请求令牌来收集有关客户端浏览器的信息以及有关创建账户创建请求时的人机交互级别的信息。该规则组按 IP 地址和客户端会话汇总请求，并按提供的账户信息（例如实际地址和电话号码）进行聚合，以检测和管理批量创建账户的尝试。此外，该规则组会检测并阻止使用已泄露的凭证创建新账户，从而保护应用程序和新用户的安全状况。

## 使用此规则组的注意事项
<a name="aws-managed-rule-groups-acfp-using"></a>

此规则组需要自定义配置，其中包括应用程序的账户注册和账户创建路径的规范。除非另有说明，否则此规则组中的规则会检查您的客户端发送到这两个端点的所有请求。如需配置和实施此规则组，请参阅 [Amazon WAF 欺诈控制账户创建欺诈预防 (ACFP)](waf-acfp.md) 中的指导。

**注意**  
使用此托管规则组时，您需要额外付费。有关更多信息，请参阅[Amazon WAF 定价](https://www.amazonaws.cn/waf/pricing/)。

此规则组是 Amazon WAF中智能威胁缓解保护的一部分。有关信息，请参阅[中的智能威胁缓解 Amazon WAF](waf-managed-protections.md)。

为了降低成本并确保您可以根据需要管理 Web 流量，请按照 [中智能缓解威胁的最佳实践 Amazon WAF](waf-managed-protections-best-practices.md) 中的指导使用此规则组。

此规则组不可与 Amazon Cognito 用户群体一起使用。您无法将使用此规则组的保护包（web ACL）与用户池相关联，也无法将此规则组添加到已与用户池关联的保护包（web ACL）中。

## 此规则组添加的标签
<a name="aws-managed-rule-groups-acfp-labels"></a>

此托管规则组会为其评估的 Web 请求添加标签，这些标签可用于在保护包 (Web ACL) 中在此规则组之后运行的规则。 Amazon WAF 还会记录亚马逊 CloudWatch 指标的标签。有关标签和标签指标的一般信息，请参阅 [Web 请求标签](waf-labels.md) 和 [标签指标和维度](waf-metrics.md#waf-metrics-label)。

### 令牌标签
<a name="aws-managed-rule-groups-acfp-labels-token"></a>

该规则组使用 Amazon WAF 令牌管理根据令牌的状态检查和标 Amazon WAF 记 Web 请求。 Amazon WAF 使用令牌进行客户端会话跟踪和验证。

有关令牌和令牌管理的信息，请参阅 [代币在 Amazon WAF 智能威胁缓解中的使用](waf-tokens.md)。

有关此处描述的标签组件的信息，请参阅 [中的标签语法和命名要求 Amazon WAF](waf-rule-label-requirements.md)。

**客户端会话标签**  
该标签`awswaf:managed:token:id:identifier`包含一个唯一标识符， Amazon WAF 令牌管理使用该标识符来标识客户端会话。如果客户端获取了新令牌，例如在丢弃其正在使用的令牌之后，标识符可能会更改。

**注意**  
Amazon WAF 不报告该标签的 Amazon CloudWatch 指标。

**浏览器指纹标签**  
该标签`awswaf:managed:token:fingerprint:fingerprint-identifier`包含一个强大的浏览器指纹标识符， Amazon WAF 令牌管理根据各种客户端浏览器信号计算该标识符。多次尝试获取令牌时，此标识符保持不变。指纹标识符并非仅属于单个客户端。

**注意**  
Amazon WAF 不报告该标签的 Amazon CloudWatch 指标。

**令牌状态标签：标签命名空间前缀**  
令牌状态标签报告令牌的状态、质询以及其中包含的 CAPTCHA 信息。

每个令牌状态标签都以下列命名空间前缀之一开头：
+ `awswaf:managed:token:`：用于报告令牌的一般状态以及令牌的质询信息的状态。
+ `awswaf:managed:captcha:`：用于报告令牌的 CAPTCHA 信息的状态。

**令牌状态标签：标签名称**  
在前缀之后，标签的其余部分提供详细的令牌状态信息：
+ `accepted`：请求令牌存在且包含以下内容：
  + 有效的质询或 CAPTCHA 解决方案。
  + 未过期的质询或 CAPTCHA 时间戳。
  + 对保护包（web ACL）有效的域规范。

  示例：标签 `awswaf:managed:token:accepted` 表明 web 请求的令牌具有有效的质询解决方案、未过期的质询时间戳以及有效的域。
+ `rejected`：请求令牌存在但不符合接受标准。

  除了被拒绝的标签外，令牌管理还添加了一个自定义标签命名空间和名称来指示原因。
  + `rejected:not_solved`：令牌缺少质询或 CAPTCHA 解决方案。
  + `rejected:expired`：根据保护包（web ACL）配置的令牌免疫时间，令牌的质询或 CAPTCHA 时间戳已过期。
  + `rejected:domain_mismatch`：令牌的域与保护包（web ACL）的令牌域配置不匹配。
  + `rejected:invalid`— Amazon WAF 无法读取指示的标记。

  示例：标签 `awswaf:managed:captcha:rejected` 和 `awswaf:managed:captcha:rejected:expired` 共同表示请求未提供有效的 CAPTCHA 解决方案，因为令牌中的 CAPTCHA 时间戳已超过保护包（web ACL）中配置的 CAPTCHA 令牌免疫时间。
+ `absent`：请求没有令牌，或者令牌管理器无法读取它。

  示例：标签 `awswaf:managed:captcha:absent` 表示请求没有令牌。

### ACFP 标签
<a name="aws-managed-rule-groups-acfp-labels-rg"></a>

该规则组生成带有命名空间前缀 `awswaf:managed:aws:acfp:` 的标签，后接自定义命名空间和标签名称。规则组可能会向一个请求添加多个标签。

您可以通过调用 `DescribeManagedRuleGroup` 从 API 检索一个规则组的所有标签。标签列在响应的 `AvailableLabels` 属性中。

## 账户创建欺诈预防规则列表
<a name="aws-managed-rule-groups-acfp-rules"></a>

此部分列出了 `AWSManagedRulesACFPRuleSet` 中的 ACFP 规则以及规则组的规则添加到 Web 请求的标签。

该规则组中的所有规则都需要 Web 请求令牌，但前两个 `UnsupportedCognitoIDP` 和 `AllRequests` 除外。有关令牌提供的信息的描述，请参阅 [Amazon WAF 代币特征](waf-tokens-details.md)。

除非另有说明，否则此规则组中的规则会检查您的客户端发送到您在规则组配置中提供的账户注册和账户创建页面路径的所有请求。有关配置此规则组的信息，请参阅 [Amazon WAF 欺诈控制账户创建欺诈预防 (ACFP)](waf-acfp.md)。

**注意**  
本文档包含此托管规则组的最新静态版本。我们在 [Amazon 托管规则变更日志](aws-managed-rule-groups-changelog.md) 的更改日志中报告版本变更。有关其他版本的信息，请使用 API 命令[DescribeManagedRuleGroup](https://docs.amazonaws.cn/waf/latest/APIReference/API_DescribeManagedRuleGroup.html)。  
我们在 Amazon 托管规则组中发布的规则信息旨在为您提供使用规则所需的信息，而不会向不良行为者提供他们规避规则所需的信息。  
如果您需要更多信息，请联系 [Amazon Web Services 支持 中心](https://console.amazonaws.cn/support/home#/)。


| 规则名称 | 描述和标签 | 
| --- | --- | 
| UnsupportedCognitoIDP |  检查流向 Amazon Cognito 用户群体的 Web 流量。ACFP 不可用于 Amazon Cognito 用户群体，此规则有助于确保不使用其他 ACFP 规则组规则来评估用户群体流量。 规则操作：Block 标签：`awswaf:managed:aws:acfp:unsupported:cognito_idp` 和 `awswaf:managed:aws:acfp:UnsupportedCognitoIDP`   | 
| AllRequests |  将规则操作应用于访问注册页面路径的请求。在配置规则组时可以配置注册页面路径。 默认情况下，此规则会将 Challenge 应用于请求。通过应用此操作，该规则可确保在规则组中的其余规则评估任何请求之前，客户端获得质询令牌。 确保您的最终用户在提交账户创建请求之前加载注册页面路径。 令牌通过客户端应用程序集成 SDKs 以及规则操作CAPTCHA和添加到请求中Challenge。为了获得最高效的代币，我们强烈建议您使用应用程序集成 SDKs。有关更多信息，请参阅 [中的客户端应用程序集成 Amazon WAF](waf-application-integration.md)。 规则操作：Challenge 标签：无  | 
| RiskScoreHigh |  检查是否存在 IP 地址或其他被认为高度可疑因素的账户创建请求。这种评估通常基于多个影响因素，您可以在规则组添加到请求的 `risk_score` 标签中看到这些因素。 规则操作：Block 标签：`awswaf:managed:aws:acfp:risk_score:high` 和 `awswaf:managed:aws:acfp:RiskScoreHigh`  该规则也可能适用于该请求 `medium` 或 `low` 风险评分标签。 如果 Amazon WAF 无法成功评估 Web 请求的风险评分，则该规则会添加标签 `awswaf:managed:aws:acfp:risk_score:evaluation_failed ` 此外，该规则还添加了带有命名空间的标签 `awswaf:managed:aws:acfp:risk_score:contributor:`，其中包括风险评分评估状态和特定风险评分贡献者的结果，例如 IP 声誉和被盗凭证评估。  | 
| SignalCredentialCompromised |  在被盗凭证数据库中搜索在账户创建请求中提交的凭证。 此规则可确保新客户以积极的安全态势初始化其账户。  您可以添加自定义阻止响应，向最终用户描述问题并告诉他们如何继续操作。有关信息，请参阅[ACFP 示例：针对被泄漏凭证的自定义响应](waf-acfp-control-example-compromised-credentials.md)。  规则操作：Block 标签：`awswaf:managed:aws:acfp:signal:credential_compromised` 和 `awswaf:managed:aws:acfp:SignalCredentialCompromised`  规则组应用以下相关标签，但不对其采取任何操作，因为并非所有账户创建中的请求都具有凭证：`awswaf:managed:aws:acfp:signal:missing_credential`  | 
| SignalClientHumanInteractivityAbsentLow |  检查账户创建请求的令牌中是否有数据表明人机应用程序交互出现异常。人机交互通过鼠标移动、按键等交互来检测。如果页面有 HTML 表单，则人机交互包括与表单的交互。  此规则仅检查对账户创建路径的请求，并且仅在您实现了应用程序集成 SDKs后才会进行评估。软件开发工具包实施以被动方式捕获人机交互并将信息存储在请求令牌中。有关更多信息，请参阅 [Amazon WAF 代币特征](waf-tokens-details.md) 和 [中的客户端应用程序集成 Amazon WAF](waf-application-integration.md)。  规则操作：CAPTCHA 标签：无。该规则根据不同的因素确定匹配项，因此没有适用于所有可能的匹配场景的单独标签。 规则组可以将下列一个或多个标签应用于请求： `awswaf:managed:aws:acfp:signal:client:human_interactivity:low\|medium\|high` `awswaf:managed:aws:acfp:SignalClientHumanInteractivityAbsentLow\|Medium\|High`  `awswaf:managed:aws:acfp:signal:client:human_interactivity:insufficient_data`  `awswaf:managed:aws:acfp:signal:form_detected`.  | 
| AutomatedBrowser |  检查是否显示客户端浏览器可能已自动运行。 规则操作：Block 标签：`awswaf:managed:aws:acfp:signal:automated_browser` 和 `awswaf:managed:aws:acfp:AutomatedBrowser`  | 
| BrowserInconsistency |  检查请求的令牌是否存在不一致的浏览器询问数据。有关更多信息，请参阅 [Amazon WAF 代币特征](waf-tokens-details.md)。 规则操作：CAPTCHA 标签：`awswaf:managed:aws:acfp:signal:browser_inconsistency` 和 `awswaf:managed:aws:acfp:BrowserInconsistency`  | 
| VolumetricIpHigh |  检查从各个 IP 地址发送的高流量账户创建请求。高流量是指在 10 分钟的窗口内超过 20 个请求。 由于延迟，此规则适用的阈值可能略有不同。对于高流量，在应用规则操作之前，一些请求可能会超出限制。 规则操作：CAPTCHA 标签：`awswaf:managed:aws:acfp:aggregate:volumetric:ip:creation:high` 和 `awswaf:managed:aws:acfp:VolumetricIpHigh`  该规则将以下标签应用于中流量（每 10 分钟窗口内超过 15 个请求）和低流量（每 10 分钟窗口内超过 10 个请求）的请求，但不对它们采取任何操作：`awswaf:managed:aws:acfp:aggregate:volumetric:ip:creation:medium` 和 `awswaf:managed:aws:acfp:aggregate:volumetric:ip:creation:low`。  | 
| VolumetricSessionHigh |  检查来自各个客户端会话的高流量账户创建请求。高流量是指在 30 分钟的窗口内超过 10 个请求。  由于延迟，此规则适用的阈值可能略有不同。在应用规则操作之前，一些请求可能会超出限制。  规则操作：Block 标签：`awswaf:managed:aws:acfp:aggregate:volumetric:session:creation:high` 和 `awswaf:managed:aws:acfp:VolumetricSessionHigh`  该规则组将以下标签应用于中流量（每 30 分钟窗口内超过 5 个请求）和低流量（每 30 分钟窗口内超过 1 个请求）的请求，但不对它们采取任何操作：`awswaf:managed:aws:acfp:aggregate:volumetric:session:creation:medium` 和 `awswaf:managed:aws:acfp:aggregate:volumetric:session:creation:low`。  | 
| AttributeUsernameTraversalHigh |  检查单个客户端会话中是否存在使用不同用户名的高流量账户创建请求。高流量的阈值为 30 分钟内超过 10 个请求。  由于延迟，此规则适用的阈值可能略有不同。在应用规则操作之前，一些请求可能会超出限制。  规则操作：Block 标签：`awswaf:managed:aws:acfp:aggregate:attribute:username_traversal:creation:high` 和 `awswaf:managed:aws:acfp:AttributeUsernameTraversalHigh`  该规则将以下标签应用于中流量（每 30 分钟窗口内超过 5 个请求）和低流量（每 30 分钟窗口内超过 1 个请求）的用户名遍历请求，但不对它们采取任何操作：`awswaf:managed:aws:acfp:aggregate:attribute:username_traversal:creation:medium` 和 `awswaf:managed:aws:acfp:aggregate:attribute:username_traversal:creation:low`。  | 
| VolumetricPhoneNumberHigh |  检查是否存在使用相同电话号码的高流量账户创建请求。高流量的阈值为 30 分钟内超过 10 个请求。  由于延迟，此规则适用的阈值可能略有不同。在应用规则操作之前，一些请求可能会超出限制。  规则操作：Block 标签：`awswaf:managed:aws:acfp:aggregate:volumetric:phone_number:high` 和 `awswaf:managed:aws:acfp:VolumetricPhoneNumberHigh` 该规则组将以下标签应用于中流量（每 30 分钟窗口内超过 5 个请求）和低流量（每 30 分钟窗口内超过 1 个请求）的请求，但不对它们采取任何操作：`awswaf:managed:aws:acfp:aggregate:volumetric:phone_number:medium` 和 `awswaf:managed:aws:acfp:aggregate:volumetric:phone_number:low`。  | 
| VolumetricAddressHigh |  检查是否存在使用相同物理地址的高流量账户创建请求。高流量的阈值为每 30 分钟窗口内超过 100 个请求。  由于延迟，此规则适用的阈值可能略有不同。在应用规则操作之前，一些请求可能会超出限制。  规则操作：Block 标签：`awswaf:managed:aws:acfp:aggregate:volumetric:address:high` 和 `awswaf:managed:aws:acfp:VolumetricAddressHigh`   | 
| VolumetricAddressLow |  检查是否存在使用相同物理地址的中流量和低流量账户创建请求。中流量的阈值为每 30 分钟窗口超过 50 个请求，而低流量的阈值为每 30 分钟窗口超过 10 个请求。 该规则适用于中流量或低流量。  由于延迟，此规则适用的阈值可能略有不同。在应用规则操作之前，一些请求可能会超出限制。  规则操作：CAPTCHA 标签：`awswaf:managed:aws:acfp:aggregate:volumetric:address:low\|medium` 和 `awswaf:managed:aws:acfp:VolumetricAddressLow\|Medium`   | 
| VolumetricIPSuccessfulResponse |  检查是否存在针对单个 IP 地址的高流量创建账户成功请求。此规则汇总了受保护资源对账户创建请求的成功响应。高流量的阈值为每 10 分钟窗口内超过 10 个请求。 此规则有助于防止批量创建账户的尝试。它的阈值低于仅计算请求的规则 `VolumetricIpHigh`。 如果您已将规则组配置为检查响应正文或 JSON 组件，则 Amazon WAF 可以检查这些组件类型的前 65,536 字节 (64 KB) 以查看成功或失败指示器。 此规则根据受保护资源对最近来自相同 IP 地址的登录尝试的成功和失败响应，将规则操作和标签应用于来自某个 IP 地址的新 Web 请求。在配置规则组时，您可以定义如何计算成功和失败。  Amazon WAF 仅在保护 Amazon CloudFront 分销的保护包 (Web ACLs) 中评估此规则。   由于延迟，此规则适用的阈值可能略有不同。在规则开始匹配后续尝试之前，客户端发送账户创建成功尝试的次数可能会超过允许的次数。  规则操作：Block 标签：`awswaf:managed:aws:acfp:aggregate:volumetric:ip:successful_creation_response:high` 和 `awswaf:managed:aws:acfp:VolumetricIPSuccessfulResponse`  该规则组还将以下相关标签应用于请求，但没有任何关联操作。所有计数均适用 10 分钟窗口。`awswaf:managed:aws:acfp:aggregate:volumetric:ip:successful_creation_response:medium` 对应超过 5 个成功请求，`awswaf:managed:aws:acfp:aggregate:volumetric:ip:successful_creation_response:low` 对应超过 1 个成功请求，`awswaf:managed:aws:acfp:aggregate:volumetric:ip:failed_creation_response:high` 对应超过 10 个失败请求，`awswaf:managed:aws:acfp:aggregate:volumetric:ip:failed_creation_response:medium` 对应超过 5 个失败请求，`awswaf:managed:aws:acfp:aggregate:volumetric:ip:failed_creation_response:low` 对应超过 1 个失败请求。  | 
| VolumetricSessionSuccessfulResponse |  检查受保护资源对从单个客户端会话发送的账户创建请求是否有低流量成功响应。这有助于防止批量创建账户的尝试。低流量的阈值为每 30 分钟窗口内超过 1 个请求。 这有助于防止批量创建账户的尝试。此规则使用的阈值低于仅跟踪请求的规则 `VolumetricSessionHigh`。 如果您已将规则组配置为检查响应正文或 JSON 组件，则 Amazon WAF 可以检查这些组件类型的前 65,536 字节 (64 KB) 以查看成功或失败指示器。 此规则根据受保护资源对最近来自相同客户端会话的登录尝试的成功和失败响应，将规则操作和标签应用于来自某个客户端会话的新 Web 请求。在配置规则组时，您可以定义如何计算成功和失败。  Amazon WAF 仅在保护 Amazon CloudFront 分销的保护包 (Web ACLs) 中评估此规则。   由于延迟，此规则适用的阈值可能略有不同。在规则开始匹配后续尝试之前，客户端发送账户创建失败尝试的次数可能会超过允许的次数。  规则操作：Block 标签：`awswaf:managed:aws:acfp:aggregate:volumetric:session:successful_creation_response:low` 和 `awswaf:managed:aws:acfp:VolumetricSessionSuccessfulResponse`  该规则组还将以下相关标签应用于请求。所有计数均适用 30 分钟窗口。`awswaf:managed:aws:acfp:aggregate:volumetric:session:successful_creation_response:high` 对应超过 10 个成功请求，`awswaf:managed:aws:acfp:aggregate:volumetric:session:successful_creation_response:medium` 对应超过 5个成功请求，`awswaf:managed:aws:acfp:aggregate:volumetric:session:failed_creation_response:high` 对应超过 10 个失败请求，`awswaf:managed:aws:acfp:aggregate:volumetric:session:failed_creation_response:medium` 对应超过 5 个失败请求，`awswaf:managed:aws:acfp:aggregate:volumetric:session:failed_creation_response:low` 对应超过 1 个失败请求。  | 
| VolumetricSessionTokenReuseIp |  检查是否存在账户创建请求在 5 个以上不同 IP 地址中使用同一令牌。  由于延迟，此规则适用的阈值可能略有不同。在应用规则操作之前，一些请求可能会超出限制。  规则操作：Block 标签：`awswaf:managed:aws:acfp:aggregate:volumetric:session:creation:token_reuse:ip` 和 `awswaf:managed:aws:acfp:VolumetricSessionTokenReuseIp`  | 