本指南介绍将 Exposed Credentials Check 配置升级到新的泄露凭据检测的一般步骤。
Cloudflare 建议客户更新配置以使用新的泄露凭据检测,它具有以下优势:
- 使用包含超过 150 亿个密码的全面泄露凭据数据库。
- 启用检测后,即使在创建任何缓解规则之前,也可以在 Security Analytics 中查看包含泄露凭据的入站请求数量。
- 您可以使用速率限制规则或自定义规则等 WAF 功能,对包含泄露凭据的请求采取措施。
如果您已部署 Cloudflare Exposed Credentials Check 托管规则集:
-
在 Cloudflare 仪表板中,前往 Security rules(安全规则) 页面。
Go to Security rules ↗ -
(可选)按 Managed rules(托管规则) 筛选。
-
编辑执行 Cloudflare Exposed Credentials Check Ruleset 的规则,并记下当前配置(即所执行的操作)。然后,删除(或关闭)该规则。
- 登录 Cloudflare 仪表板 ↗,并选择您的账户和域名。
- 前往 Security(安全性) > WAF > Managed rules(托管规则) 选项卡。
- 在 Managed rules(托管规则) 下,编辑执行 Cloudflare Exposed Credentials Check Ruleset 的规则,并记下当前配置(即所执行的操作)。然后,删除(或关闭)该规则。
在 Free 计划中,leaked credentials detection 默认启用,无需操作。在付费计划中,可在 Cloudflare 仪表板、通过 API 或使用 Terraform 开启检测。
-
在 Cloudflare 仪表板中,前往 Security Settings(设置) 页面。
Go to Settings ↗ -
(可选)按 Detection tools 筛选。
-
开启 Leaked credential detection。
- 登录 Cloudflare 仪表板 ↗,并选择你的账户和域名。
- 前往 Security(安全性) > Settings(设置)。
- 在 Incoming traffic detections 下,开启 Leaked credentials。
使用类似以下的 POST 请求:
Required API token permissions
At least one of the following token permissions is required:Zone WAF WriteAccount WAF Write
curl "https://api.cloudflare.com/client/v4/zones/$ZONE_ID/leaked-credential-checks" \
--request POST \
--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
--json '{
"enabled": true
}'使用 cloudflare_leaked_credential_check 资源来为区域启用泄露凭据检测。例如:
resource "cloudflare_leaked_credential_check" "zone_lcc_example" {
zone_id = var.cloudflare_zone_id
enabled = true
}根据您之前的配置,执行以下操作之一:
-
如果您在 Exposed Credentials Check 中使用的是默认操作:启用 Add Leaked Credentials Checks Header 托管转换,该转换会向包含泄露凭据的入站请求添加
Exposed-Credential-Check标头。尽管标头名称与 Exposed Credentials Check 中相同,但新实现中的标头值将在1到4之间变化。 -
如果您使用的是不同操作:创建一条自定义规则,其操作与您之前使用的操作等效。该规则应匹配
User and password leaked is true(如果使用表达式编辑器,请输入(cf.waf.credential_check.username_and_password_leaked))。
- 在 Security Analytics 中查看泄露凭据检测的结果。
- 有关检测泄露凭据时可使用的示例缓解策略,请参阅 Example mitigation rules。