跳转到内容
搜索文档

启用 URL 规范化所需的防火墙规则更改

最后更新 查看 MarkdownAgent 设置

2021 年 4 月 8 日,Cloudflare 宣布推出 URL 规范化,这是一项通过规范化 HTTP 请求 URI 路径来保护区域的功能。

恶意用户可以精心设计特定的 URI,而防火墙系统和源系统可能会对其进行不同的解释。当您启用 **Normalize incoming URLs(规范化传入的 URL)**时,所有过滤 URI 路径的规则都将收到规范形式的 URL,这为抵御这些恶意用户提供了额外的保护层。

Cloudflare 逐步为所有 Cloudflare 区域启用了 URL 规范化,但可能受此更改影响的区域除外。我们通过分析所有防火墙规则来确定受影响的区域,寻找在使用 URL 规范化技术时不再匹配的 HTTP 字段模式。

这些字段如下:

  • http.request.uri.path
  • http.request.full_uri
  • http.request.uri

为了防止您现有的防火墙规则行为发生任何变化,Cloudflare 没有自动为可能受这些更改影响的区域启用 URL 规范化。

为什么 URL 规范化很重要

Cloudflare 强烈建议您在 Rules(规则) > Overview(概览) > URL Normalization(URL 规范化) 中启用 Normalize incoming URLs(规范化传入 URL),以加强您区域的安全状态。如果不这样做,您的区域面临成功攻击的风险将会更大。恶意方可能会以规则未考虑到的方式精心设计 URL。

例如,如果恶意行为者将 l 字符编码为 %6C,则具有如 http.request.uri.path contains "/login" 等表达式的防火墙规则可能会被绕过。在这种情况下,如果禁用 URL 规范化,防火墙规则将无法匹配流量。

有关更多信息和其他示例,请参阅 URL 规范化的工作原理


推荐步骤

建议您:

  1. 更新任何受 URL 规范化更改影响的防火墙规则。
  2. 启用 URL 规范化。

这些步骤将确保您的区域具有更强的安全状态。

1. 查看并更新防火墙规则

在启用 URL 规范化之前,您应该查看区域上受影响的防火墙规则,并采取以下方法之一:

  • 编辑这些防火墙规则,以删除规范化后将不再触发的部分 — 例如,在 URL 路径中查找 //../ 的任何规则。管理员以前创建这些规则是为了执行有限的 URL 规范化,现在可以安全地禁用然后删除这些规则。

  • 如果您希望通过这些防火墙规则识别具有非规范化 URI 路径的访问者,您应该将其更新为使用原始(或 raw)非规范化字段。这些字段如下:

    • raw.http.request.uri.path
    • raw.http.request.full_uri
    • raw.http.request.uri

2. 启用 URL 规范化

一旦您更新了受影响的防火墙规则,请在 Rules(规则) > Overview(概览) > URL Normalization(URL 规范化) 中启用 URL 规范化。

Cloudflare 用户必须具有 Firewall 角色或管理员角色之一,才能在仪表板中访问 URL 规范化设置。


相关资源

这篇文档对您有帮助吗?