自动将 polyfill.io 链接替换为 Cloudflare 的镜像以实现更安全的互联网

💡 原文英文,约1300词,阅读约需5分钟。
📝

内容提要

Polyfill.io 是一个 JavaScript 库服务,被发现向用户的浏览器注入恶意代码。Cloudflare 发布了一个安全的替代方案 cdnjs,并建议替换 polyfill.io。问题的出现是因为 polyfill.io 被出售给 Funnull,增加了供应链风险。Cloudflare 的客户端安全系统 Page Shield 检测到了恶意活动。Cloudflare 的 HTML 重写服务 ROFL 允许快速安全地修改 polyfill.io 链接。Cloudflare 建议网站所有者移除 polyfill.io 并用他们的安全镜像 cdnjs 替换。

🔎

延伸解读

供应链攻击的警示

polyfill.io 被出售给 Funnull 后,因新所有者缺乏信任记录,最终被用于注入恶意代码,导致用户被重定向。这凸显了第三方脚本的供应链风险:即使服务曾经可靠,所有权变更也可能引入威胁。网站应定期审查依赖项,避免过度依赖单一外部服务。

自动重写的技术实现

Cloudflare 利用 ROFL 技术实时重写 HTML 中的 polyfill.io 链接,将其替换为 cdnjs 镜像。ROFL 用 Rust 编写,能高效处理海量请求,减少延迟。该功能在遇到 CSP 头时会自动禁用,防止破坏网站策略。这展示了如何在不停机的情况下快速缓解安全威胁。

免费与付费用户的差异处理

Cloudflare 为免费计划用户默认开启重写功能,因其应用较简单且可能无法快速响应安全更新;付费用户则可一键启用,以保持对复杂应用的控制。所有用户均可随时关闭。这种差异化策略平衡了安全性与灵活性,确保广泛保护的同时尊重用户自主权。

网站所有者的行动建议

无论是否使用 Cloudflare,网站所有者都应立即搜索代码库中的 polyfill.io 引用,并替换为 Cloudflare 的安全镜像(如 cdnjs.cloudflare.com/polyfill/)。自动重写虽能处理多数情况,但手动替换是更彻底的解决方案,可消除对不可信服务的依赖,确保长期安全。

❓

Q&A

为什么 polyfill.io 不再可信?

因为 polyfill.io 被出售给 Funnull,增加了供应链风险,并且被发现向用户浏览器注入恶意 JavaScript 代码。

Cloudflare 如何替换 polyfill.io 的链接?

Cloudflare 提供了自动 JavaScript URL 重写服务,可以将 polyfill.io 的链接替换为安全的 cdnjs 镜像。

使用 Cloudflare 的网站如何移除 polyfill.io?

在 Cloudflare 仪表板中,前往安全设置,点击即可移除 polyfill.io,免费用户默认启用此功能。

为什么建议所有网站所有者都移除 polyfill.io?

因为 polyfill.io 被用于注入恶意代码,可能导致用户被重定向到其他网站,影响网站安全。

Cloudflare 的 ROFL 技术是什么?

ROFL 是 Cloudflare 的 HTML 重写技术,能够快速安全地修改 HTML 内容,确保链接替换不破坏网站功能。

如何确保网站不再依赖 polyfill.io?

网站所有者应搜索代码库,将 polyfill.io 替换为 Cloudflare 的安全镜像链接,如 cdnjs.cloudflare.com/polyfill/。

🏷️

标签

➡️

继续阅读