
Vercel 近期发布了一系列针对 Next.js 的安全公告,集中修复了十余个漏洞,涵盖拒绝服务、中间件绕过、服务端请求伪造(SSRF)以及跨站脚本(XSS)等严重安全问题。受影响的版本范围相当广,包括使用 App Router 的 Next.js 13.x 至 16.x 版本,以及 React Server Components 的 19.x 版本。
CVE-2026-23870:高危DoS漏洞
这是一个高危的拒绝服务漏洞,编号 CVE-2026-23870。它影响着 19.x 版本的 React Server Components 以及从 13.x 到 16.x 所有使用 App Router 的 Next.js 部署。
攻击者只需向任意 App Router 的服务器函数端点发送特制的 HTTP 请求,就能在反序列化过程中引发 CPU 使用率的急剧飙升,最终导致未修复的系统遭受拒绝服务攻击。根源在于 React "Flight" 协议的反序列化逻辑没有对传入的有效负载施加充分的结构或类型约束,使得恶意数据有机可乘。
中间件与代理授权绕过漏洞
关于中间件绕过,Vercel 一并发布了三项独立的安全公告(GHSA-267c-6grr-h53f、GHSA-26hh-7cqf-hhc6 和 GHSA-492v-c6pp-mqqv)。这些漏洞都指向 App Router 应用中一个共同的软肋:特制的 .rsc 和段预取 URL 能够解析到同一页面,却避开了预期的中间件规则匹配。这意味着,攻击者可以未经授权检查,直接访问到本应受保护的内容。
修复方案现已将 App Router 的传输变体纳入了中间件匹配器的生成逻辑中,确保所有请求类型(包括预取变体)都能被中间件一致地保护起来。在完成升级前,开发者应当在底层路由或页面逻辑中直接实施授权,而不是仅仅依赖中间件。
CVE-2026-44578:高危SSRF漏洞
另一个高危漏洞 CVE-2026-44578(对应 GHSA-c4j6-fc7j-m34r)允许攻击者通过特制的 WebSocket 升级请求,在自托管的 Node.js 部署中实现服务端请求伪造(SSRF)。利用此漏洞,攻击者可以操纵服务器将请求代理到任意的内部或外部目标,这可能暴露内部服务或云元数据端点,对云原生/IaaS环境中的资产威胁尤甚。
Vercel 明确表示,由其托管的部署不受此问题影响。官方的修复方案是对 WebSocket 升级处理应用了与标准 HTTP 请求相同的安全检查机制。
CVE-2026-44573:Pages Router 的授权绕过
漏洞 CVE-2026-44573(GHSA-36qx-fr4f-26g5)专门影响那些使用 Pages Router,并配置了 i18n 和基于中间件授权的前端框架/工程化应用。通过无区域设置的 /_next/data/<buildId>/<page>.json 请求,攻击者可以完全绕过中间件,获取到受保护页面的服务端渲染 JSON 数据。匹配器逻辑现已更新,确保在带前缀和不带前缀的数据路由上都能应用一致的匹配规则。
其他修复及临时缓解措施
除了上述高危漏洞,Vercel 此次还修复了多个中低危问题,其中包括:
- 使用 CSP nonce 的 App Router 应用中存在的 XSS 漏洞(GHSA-ffhc-5mcf-pf4q)。
- 由于包含不可信输入,在
beforeInteractive 脚本中引发的 XSS 漏洞(GHSA-gx5p-jg67-6x7h)。
- 图像优化 API 中的拒绝服务漏洞(GHSA-h64f-5h5j-jqjh)。
- React Server Component 响应中的缓存投毒问题(GHSA-wfc6-r584-vfw7、GHSA-vfv6-92ff-j949)。
- 缓存组件中因连接耗尽导致的拒绝服务漏洞(GHSA-mg66-mrh9-m8jx)。
- 中间件重定向场景下的缓存投毒问题(GHSA-3g8h-86w9-wvmq)。
对于所有运行受影响 Next.js 版本的组织,优先且紧急地进行升级是首要任务。如果团队确实无法立即升级,可采取以下临时缓解措施,作为安全/渗透/逆向领域的纵深防御补充:
- 在单独的路由或页面逻辑中实施授权,而不是仅仅依赖中间件。
- 在反向代理或负载均衡器层面阻止 WebSocket 升级请求。
- 严格限制服务器的出口流量,仅允许访问已知的内部网络。
参考来源:
Multiple Critical Vulnerabilities Patched in Next.js and React Server Components
https://cybersecuritynews.com/next-js-react-server-vulnerabilities/
|