# Next.js 竞态条件导致缓存中毒
## 漏洞概述
Next.js 是一个用于构建全栈 web 应用程序的 React 框架。在 14.2.24 和 15.1.6 版本之前,存在一个竞态条件漏洞,导致正常端点在特定的配置错误下会提供 `pageProps` 数据而不是标准 HTML。
## 影响版本
- 低于 14.2.24 版本
- 低于 15.1.6 版本
## 细节
该漏洞仅在 Pages Router 的情况下发生,且需要特定的错误配置。问题通过移除传入请求中的 `x-now-route-matches` 标头在 15.1.6 和 14.2.24 版本中得到修复。
## 影响
- 应用程序托管在 Vercel 平台上不受此漏洞影响,因为该平台不会仅基于 `200 OK` 状态而忽略明确的 `cache-control` 标头来缓存响应。
- 自行托管 Next.js 部署且无法立即升级的用户可以通过以下方式缓解此漏洞:
- **在内容开发网络中移除所有传入请求的 `x-now-route-matches` 标头**
- **为所有有风险的响应设置 `cache-control: no-store`**
- Next.js 的维护者强烈建议只缓存那些有明确 `cache-control` 标头的响应。
| # | POC 描述 | 源链接 | 神龙链接 |
|---|---|---|---|
| 1 | Comprehensive demonstration of CVE-2025-32421 Eclipse technique - a sophisticated race condition attack against Next.js 15.0.4 that bypasses the original CVE-2024-46982 patch. | https://github.com/hidesec/CVE-2025-32421 | POC详情 |
标题: Race condition to Cache Poisoning · Advisory · vercel/next.js · GitHub -- 🔗来源链接
标签: x_refsource_CONFIRM
神龙速读暂无评论