跳转到内容
搜索文档

托管规则集

最后更新 查看 MarkdownAgent 设置

Cloudflare 提供预配置的 managed ruleset,可防护以下 Web 应用漏洞:

  • 零日漏洞
  • 十大攻击技术
  • 被盗/泄露凭据的使用
  • 敏感数据提取

Managed ruleset 会定期更新。每条规则都有默认操作,具体取决于规则严重程度。你可以调整特定规则的行为,从多种可能操作中选择。

Managed ruleset 中的规则带有相关标签(例如 wordpress),便于搜索特定规则组并批量配置。

账户级部署

在 zone 级别,每个 WAF 托管规则集 只能部署一次。在账户级别,每个托管规则集可以部署多次。这样您可以对账户中 Enterprise zone 的不同入站流量子集,以不同配置应用同一规则集。

例如,您可以多次部署 Cloudflare OWASP Core Ruleset,使用不同的 paranoia 级别 和不同操作(PL3 使用 Managed Challenge 操作,PL4 使用 Log 操作)。更高的 paranoia 级别会启用额外规则,这些规则更可能产生误报。

示例:以两种不同配置部署 OWASP

以下示例通过下列 execute 规则,在账户级别多次部署 Cloudflare OWASP Core Ruleset

  • 第一条 execute 规则:启用最高到 paranoia 级别 3 (PL3) 的 OWASP 规则,并将操作设为 Managed Challenge
  • 第二条 execute 规则:启用最高到 PL4 的 OWASP 规则,并将操作设为 Log

此配置通过启用 PL3 规则提供额外保护,但不会阻止请求,因为更高的 paranoia 级别更容易产生误报。

第二条规则会记录 PL4 规则(规则集中最严格的一组规则)的任何匹配,从而不影响线上流量。您可以使用此配置了解 PL4 规则会影响哪些流量。

  1. 按照 仪表板说明 部署 Cloudflare OWASP Core Ruleset,并使用以下设置自定义规则集行为:

    • OWASP Anomaly Score Threshold(OWASP 异常分数阈值)Medium - 40 and higher
    • OWASP Paranoia Level(OWASP 偏执级别)PL3
    • OWASP Action(OWASP 操作)Managed Challenge
  2. 选择 Deploy(部署)

  3. 对 OWASP 规则集重复部署流程,但使用以下规则集配置:

    • OWASP Anomaly Score Threshold(OWASP 异常分数阈值)Medium - 40 and higher
    • OWASP Paranoia Level(OWASP 偏执级别)PL4
    • OWASP Action(OWASP 操作)Log

完成配置后,Deployed managed rulesets(已部署的托管规则集) 列表将显示两条针对 Cloudflare OWASP Core Ruleset 的 Execute 规则。

以下针对 Create an account ruleset 操作的 POST 请求,会在账户级别为 http_request_firewall_managed 阶段 创建 入口点规则集。该规则集包含两条规则,以不同配置将 Cloudflare OWASP Core Ruleset 部署两次。

Required API token permissions

At least one of the following token permissions is required:
  • Account WAF Write
  • Account Rulesets Write
Create an account rulesetbash
curl "https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/rulesets" \
	--request POST \
	--header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
	--json '{
		"name": "My ruleset",
		"description": "Entry point ruleset for WAF managed rulesets (account)",
		"kind": "root",
		"phase": "http_request_firewall_managed",
		"rules": [
				{
						"action": "execute",
						"action_parameters": {
								"id": "4814384a9e5d4991b9815dcfc25d2f1f",
								"overrides": {
										"categories": [
												{
														"category": "paranoia-level-4",
														"enabled": false
												}
										],
										"rules": [
												{
														"id": "6179ae15870a4bb7b2d480d4843b323c",
														"action": "managed_challenge"
												}
										]
								}
						},
						"expression": "cf.zone.plan eq \"ENT\"",
						"description": "Execute OWASP ruleset at PL3 with Managed Challenge action"
				},
				{
						"action": "execute",
						"action_parameters": {
								"id": "4814384a9e5d4991b9815dcfc25d2f1f",
								"overrides": {
										"rules": [
												{
														"id": "6179ae15870a4bb7b2d480d4843b323c",
														"action": "log"
												}
										]
								}
						},
						"expression": "cf.zone.plan eq \"ENT\"",
						"description": "Execute OWASP ruleset at PL4 with Log action"
				}
		]
	}'

自定义托管规则集的行为

要自定义托管规则集的行为,请执行以下操作之一:

  • 创建异常,以在特定条件下跳过托管规则集或其某些规则的执行。
  • 配置重写以更改规则操作或禁用托管规则集的一个或多个规则。重写可以影响整个托管规则集、特定标签或托管规则集中的特定规则。

异常的优先级高于重写。

这篇文档对您有帮助吗?