Tell HN:Cloudflare 在你切换 nameserver 时会悄悄注入其分析脚本

Cloudflare 因在使用其反向代理/CDN 的网站中自动注入基于 JavaScript 的 Web Analytics beacon 而受到批评,即便站点所有者以为自己已禁用分析或只想使用 DNS 服务。评论者认为,这种“中间人”式内容修改破坏了信任,引发隐私与 GDPR 方面的问题,并体现了偏向 Cloudflare 数据收集、而非用户同意的暗黑模式默认设置。另一些人反驳说,TLS 终止和内联修改本就是 Cloudflare 核心代理服务的一部分,指出该功能可以关闭,并建议想要避免此类更改保证的用户,应彻底避开基于代理的 CDN。

Cloudflare 做了什么

  • Cloudflare 现在会在使用代理的站点中注入一个 JavaScript beacon(cloudflareinsights.com),为其实时用户测量(RUM)“Web Analytics”和 Observatory 工具提供支持。
  • 该功能在免费套餐中默认开启;付费套餐则需要手动启用。
  • 一些用户表示 Web Analytics 显示为已禁用,但却必须先启用它,才能找到关闭 beacon 的选项。

注入何时发生(代理 vs DNS)

  • 只有当 Cloudflare 作为反向代理工作时才会发生注入(橙色云 / “Proxied” 记录);纯 DNS(灰色云)则不会。
  • 对于代理记录,TLS 在 Cloudflare 处终止,因此它可以查看并修改传输中的 HTML 响应。
  • 许多用户并不知道自己已启用代理,或者觉得界面/初始默认设置令人困惑,或明显偏向开启代理。

用户反应与信任担忧

  • 许多人认为脚本注入是严重的信任违背,尤其是对刻意保持无 JS 或重视隐私的网站而言。
  • 有人称这是 MITM 行为,并将其比作老式免费主机注入广告;也有人认为这正是使用会终止 TLS 的 CDN 的内在结果。
  • 还有人担心“enshittification”:今天是分析,明天可能就是广告或更具侵入性的修改。

隐私、法律与 GDPR 讨论

  • Cloudflare 的博客和控制面板显示,此功能默认排除欧盟/英国流量;全局启用是可选的。
  • 关于 GDPR 合规性存在争论:
    • 一方认为他们不存储 IP 和欧盟数据,因此风险较低。
    • 另一方指出,网站所有者仍对他们甚至可能并不知晓的第三方跟踪承担法律责任。
  • 如果隐私政策没有提到这类跟踪,现有政策可能是不准确的,这一点也引发担忧。

关闭选项、缓解措施与替代方案

  • 可通过 Analytics → Web Analytics → RUM 设置按域名禁用 RUM。
  • 将 DNS 记录设为 “DNS Only” 会阻止 Cloudflare 触碰负载,但也会禁用 CDN/WAF 功能。
  • 一些技术性对策,如 CSP 或 Cache-Control: no-transform,被指出在 Cloudflare 可以重写响应时并无效果。
  • 有人建议使用其他 DNS/CDN 提供商,并警惕不必要地使用 Cloudflare,尤其是小型网站。

对 Cloudflare 做法的辩护

  • 有人认为 RUM 是一个合理的免费功能,符合 Cloudflare 作为代理的角色,并且对性能调试有价值。
  • 也有人强调,免费用户就应当预期数据收集,而运营者必须持续了解自己基础设施的选择。