
Next.js 目前存在两个严重漏洞:攻击者无需身份认证,就能针对使用 Image Optimization API 处理 AVIF 图片、且托管在 Windows 上的应用实现远程代码执行。
01 路径遍历漏洞
第一个漏洞编号为 CVE-2026-75604,影响使用 Pages Router、或者未启用 Cache Components 的 App Router 的 Next.js 应用。
当受影响应用运行在采用 Windows 文件系统的服务器上时,攻击者就能利用它。GitHub 将其定级为严重(critical),并关联到 CWE-22,也就是路径遍历(path traversal)。
漏洞成因是:应用使用攻击者可控的输入来构造文件路径,却没有充分限制路径中的特殊元素。因此,构造出的请求可以让应用访问预期目录之外的位置。
该漏洞的 CVSS v3.1 向量为 CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:H/A:H。虽然 GHSA-p293-qw3h-jr36 公告把攻击复杂度评为“高”,但利用过程可以远程完成,不需要身份认证或用户交互。
成功利用后,可能导致敏感数据泄露、服务器端内容被篡改,或应用可用性被破坏。受影响版本包括 Next.js 13.4 至 15.5.24(不含 15.5.24),以及 16.0 至 16.3.3(不含 16.3.3)。
02 AVIF 处理漏洞
Vercel 已在 Next.js 15.5.24 和 16.3.3 中修复上述问题。对于托管在 Windows 上的受影响应用,目前没有临时缓解措施,建议立即升级。
第二份严重级别公告 GHSA-2xp9-vwfh-vxw4,影响启用了 AVIF 文件优化功能的 Next.js Image Optimization API 部署。
问题根源在于 Sharp 图片处理包所依赖的 libheif 库。Next.js 依赖 Sharp 对应用提交的图片进行缩放、格式转换和优化。
攻击者可以向存在漏洞的图片优化端点提交恶意 AVIF 图片。一旦该文件被受影响的 libheif 组件处理,就可能在服务器上触发远程代码执行。
该公告给出的 CVSS v4 向量为 CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H,说明在机密性、完整性和可用性方面都有较高的潜在影响。
这个 AVIF 相关漏洞影响 Next.js 10.0.0 至 15.5.24 之前的所有版本,以及 16.3.3 之前的版本。问题同样在 15.5.24 和 16.3.3 中修复。
03 修复与防护建议
在依赖项修复传播完成之前,Next.js 已禁用 AVIF 优化作为保护措施。但组织不应只依赖这一行为。
管理员应更新已部署的 Next.js 应用,重建生产容器,刷新依赖锁文件,并确认运行中的工作负载正在使用已修复版本。
安全团队还应审查:公开的图片上传路径、Next.js Image Optimization API 的暴露面、Windows 托管的生产实例,以及日志中涉及路径遍历模式或 AVIF 处理的异常请求。上述公告由使用 evolutionstorm 和 B0RI 化名的研究人员报告。
参考来源:Critical Next.js Vulnerabilities Enables Remote Code Execution Attacks
更多 Next.js 与安全攻防的话题,也欢迎到云栈社区继续交流。