文章总结: Next.js框架发现高危DoS漏洞,攻击者可通过单个HTTP请求使自托管服务器崩溃。漏洞存在于body-streams.ts文件的cloneBodyStream函数中,允许发送无限数据流导致内存耗尽。Vercel已发布补丁设置10MB缓冲区限制,建议立即升级或部署反向代理作为缓解措施。该漏洞影响约55%自托管Next.js应用,CVSS评分为7.5分。
综合评分: 85
文章分类: 漏洞分析,WEB安全,漏洞预警,应用安全,网络安全
Next.js框架DoS漏洞仅需一次请求即可导致服务器崩溃
FreeBuf
2025年11月27日 18:32
上海
最新Next.js框架中新发现的一个高危漏洞,允许攻击者仅通过一次HTTP请求即可使自托管服务器崩溃,且执行攻击所需的资源几乎可以忽略不计。
Part01
漏洞技术分析
该拒绝服务(DoS)漏洞由Harmony Intelligence的研究人员发现,影响包括最新15.x分支在内的多个广泛使用的框架版本。漏洞存在于body-streams.ts文件中的cloneBodyStream函数,该组件负责在将流式请求传递给中间件之前将其复制到内存中。
与需要淹没网络的典型资源耗尽攻击不同,该漏洞利用了内部内存缓冲区缺乏大小限制的特性。攻击者可向服务器发送无限的数据块流,虽然攻击者可以在发送后立即从自身内存中释放每个数据块,但Next.js服务器会尝试将整个流缓冲到RAM中。这种不对称性意味着研究人员描述的”智能烤面包机”等资源有限的设备,也能通过耗尽内存成功使强大的企业服务器崩溃。
Part02
漏洞发现过程
Harmony Intelligence在测试AI AppSec Agent针对另一个已知漏洞CVE-2025-29927时意外发现了该漏洞。测试期间,Agent自主执行了一个PoC脚本导致演示应用崩溃,从而暴露出Next.js框架中的这个0Day漏洞。
Part03
受影响系统与影响范围
#
该漏洞特别影响使用中间件的自托管Next.js应用。Harmony表示,直接托管在Vercel基础设施上的应用不受此问题影响。鉴于约55%的Next.js部署采用自托管方式(企业用户中这一比例高达80%),潜在攻击面相当可观。
目前尚未分配CVE编号,但已提交申请。研究人员建议CVSS v3.1严重性评分为7.5(高危),理由是攻击门槛低且无需认证即可执行。
Part04
修复措施与缓解方案
#
Vercel已于2025年10月13日发布补丁,对内部缓冲区大小设置了默认10MB的限制。管理员应立即升级或实施严格的代理级限制。
研究人员强调,标准速率限制解决方案对此攻击无效,因为崩溃发生在基于中间件的速率限制器处理请求之前。同样,Next.js内置的bodyParser.sizeLimit配置也无法防止这种特定的内存耗尽攻击向量。
这一发现凸显了自托管架构采用纵深防御策略的重要性。虽然升级是最终解决方案,但在应用服务器前部署配置得当的反向代理,在超大请求到达应用层前将其拒绝,仍是关键的最佳实践。
参考来源:
New Unauthenticated DoS Vulnerability Crashes Next.js Servers with a Single Request
New Unauthenticated DoS Vulnerability Crashes Next.js Servers with a Single Request
#
#
#
推荐阅读
#
电台讨论
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:FreeBuf 《Next.js框架DoS漏洞仅需一次请求即可导致服务器崩溃》