在 @opennextjs/cloudflare 程序包中发现服务器端请求伪造 (SSRF) 漏洞,可能允许未经身份验证的用户滥用 /_next/image 端点,通过受害者的域代理任意远程内容。该漏洞现在被跟踪为 CVE-2025-6087,CVSS v4 评分为 7.8,影响了使用 1.3.0 版本之前的 Cloudflare 适配器为 OpenNext 部署的所有Next.js站点。
该漏洞是由 Cloudflare 部署适配器的映像代理逻辑中未实施的保护措施引起的,该保护措施使攻击者能够强制受害站点从攻击者控制的域加载远程内容。
“此问题允许攻击者从受害站点域下的任意主机加载远程资源,用于使用 Cloudflare Adapter for OpenNext 部署的任何站点,”该公告警告说。
OpenNext 是一个开源适配器,使开发人员能够在 Cloudflare Workers 等平台上部署Next.js应用程序。这为开发人员提供了基于边缘的交付的性能优势,但当图像优化等特定于平台的功能没有得到充分保护时,也会带来风险。
CVE-2025-6087 的核心是 /_next/image 终端节点,这是 Next.js 用于提供优化图像的标准路由。在受影响的部署中,此端点允许攻击者加载任意外部 URL,而无需验证:
“例如:https://victim-site.com/_next/image?url=https://attacker.com……来自 attacker.com 的攻击者控制的内容通过受害者网站的域提供。
这违反了同源策略,并为以下情况打开了大门:
- 通过基于域的信任滥用进行网络钓鱼攻击
- 误导性内容,看起来像是受害者托管的
- 如果用于通过 SSRF 探测内部服务,则可能会面临内部网络风险
已通过多个协调更新解决该安全漏洞:
- 服务器端修复:Cloudflare 推出了自动平台级更新,限制 /_next/image 仅加载实际图像内容,从而缓解所有当前和未来部署的问题。
- 代码库补丁:拉取请求 #727 在 @opennextjs/cloudflare 中引入了修复程序,安全版本发布为 v1.3.0。
- 依赖项链更新:Cloudflare 还通过 PR #9608 修补了 create-cloudflare 包,更新后的安全版本作为 v2.49.3 发布。
发表评论
您还未登录,请先登录。
登录