Next.js 框架中最新发现的一个 严重漏洞 允许攻击者通过 单个 HTTP 请求 崩溃自托管服务器,且执行所需资源极少。
该拒绝服务(DoS)漏洞由 Harmony Intelligence 研究员发现,影响框架的广泛版本,包括补丁发布前的最新 15.x 分支。
漏洞位于 body-streams.ts 文件的 cloneBodyStream 函数中,该组件负责在将流式请求传递给中间件前将其复制到内存。与需要泛洪网络的典型资源耗尽攻击不同,此漏洞利用 内部内存缓冲区缺乏大小限制 的缺陷。
根据披露信息,攻击者可向服务器发送 无限数据流块——攻击者发送后可立即释放自身内存中的每个块,但 Next.js 服务器会尝试在 RAM 中缓冲整个流。这种不对称性意味着,研究人员描述为“智能烤面包机”的低资源设备,就能通过耗尽内存成功崩溃 robust 的企业服务器。
漏洞发现过程
Harmony Intelligence 在测试 AI AppSec 代理以对抗另一个已知漏洞(CVE-2025-29927 身份验证绕过)时,意外发现了此缺陷。测试中,代理自主执行了一段概念验证脚本,导致演示应用崩溃,从而揭示了 Next.js 框架中这一零日漏洞。
受影响系统与影响范围
Harmony 表示,该漏洞 专门影响使用中间件的自托管 Next.js 应用,直接托管在 Vercel 基础设施上的应用不受影响。
鉴于约 55% 的 Next.js 部署为自托管(企业环境中高达 80%),潜在攻击面巨大。
目前该漏洞尚未分配 CVE 编号(已提交申请),研究人员建议 CVSS v3.1 severity 评分为 7.5(高),理由是攻击门槛低且无需身份验证。
Vercel 已于 2025 年 10 月 13 日修复该漏洞,引入 10MB 的默认内部缓冲区大小限制。管理员被敦促立即升级,或实施严格的代理级约束。
研究人员强调,标准速率限制解决方案对此攻击无效,因为崩溃发生在中间件速率限制器处理请求之前;同样,Next.js 内置的 bodyParser.sizeLimit 配置也无法阻止这种特定的内存耗尽向量。
这一发现凸显了自托管架构 纵深防御策略 的重要性:虽然升级是根本修复措施,但在应用服务器前部署配置适当的反向代理,在请求到达应用层前拒绝超大请求,仍是关键最佳实践。









发表评论
您还未登录,请先登录。
登录