艾体宝新闻 | Node.js 高危安全漏洞:堆栈溢出可能导致服务器崩溃(CVE-2025-59466)

一、漏洞描述

2026年1月13日,Node.js 项目官方披露了新的高危漏洞,漏洞编号为CVE-2025-59466(CVSS评分:7.5)。

漏洞成因在于Node.js 使用 V8 JavaScript 引擎,并尝试在调用栈空间耗尽时抛出可捕获的错误,以便运行时或框架可以优雅处理异常,保持服务可用。然而,在使用 Node.js 的async_hooks模块时(这个 API 用于在异步操作生命周期中追踪上下文,如数据库查询、定时器、HTTP 请求等),发生了一个边缘情况的错误:当用户代码中出现深度递归,耗尽了调用栈空间,Node.js 会直接退出进程,返回退出码 7(Internal Exception Handler Run-Time Failure),而不会抛出可以被捕获的异常,导致无法通过程序内的错误处理捕获崩溃,从而造成服务不可用。

二、影响版本

此次漏洞影响面较广,从Node.js 8.x 开始引入async_hooks API直到 18.x 的版本,这些版本都被视为高危的版本,且由于Carbon的Node.js 8.0.0版本于2017年5月30日发布,目前已经达到EoL(生命周期终止),因此次版本不会有补丁的发布。

Node.js的应用面极广,多种流行框架和性能监控工具都使用了Node.js组件,如 Datadog、New Relic、Dynatrace、Elastic APM、OpenTelemetry,如果有采用这些框架工具的项目同样需要注意补丁和版本的更新。

三、缓解措施

Node.js 官方在 以下版本中加入了修复,建议及时更新到这些版本:

  • Node.js 20.20.0 (LTS)

  • Node.js 22.22.0 (LTS)

  • Node.js 24.13.0 (LTS)

  • Node.js 25.3.0(当前版本)

四、艾体宝 Mend.io (原WhiteSource)解决方案

针对 CVE-2025-59466 这一影响范围广、生态依赖复杂的 Node.js 高危漏洞,艾体宝Mend SCA可以通过解析package.json、package-lock.json、yarn.lock等依赖文件或者计算项目文件哈希值,实现自动识别项目中直接或间接依赖的Node.js组件,并分析受影响组件在项目中的实际调用路径和依赖链,从而确认是否是真正有危害的漏洞。

对于 CVE-2025-59466 这种有明确修复方案的漏洞,Mend可以针对可修复版本提供可操作的整改建议,包括明确推荐的安全版本,例如Node.js 20.20.0+、Node.js 22.22.0+、Node.js 24.13.0+等,便利整个修复流程。

相关推荐
Kel4 小时前
Node.js 没那么复杂
人工智能·node.js·全栈
星栈独行4 小时前
Node 接口该写同步还是异步?
服务器·开发语言·后端·程序人生·node.js
星栈18 小时前
Node 接口该写同步还是异步?
后端·node.js
半个落月1 天前
用 LangChain 连接远程 MCP:从工具发现到多轮调用闭环
人工智能·后端·node.js
星栈独行1 天前
Node 框架怎么选?Express、Koa、Egg、NestJS 场景化选型指南
后端·程序人生·node.js
徐小超1 天前
从一句 Hello World 到完整 RAG 系统:一个 AI 知识库的架构选型实录
langchain·node.js·ai编程
雷工笔记2 天前
如何查看电脑有没有安装node.js及如何安装node.js
node.js
星栈2 天前
Node 框架怎么选?Express、Koa、Egg、NestJS 场景化选型指南
后端·node.js
万敏2 天前
Vue3 全栈实战第三周:组件化开发完整记录 —— Props / Emit / provide-inject / 插槽 / 自定义指令
vue.js·node.js·全栈
Kel2 天前
Node.js 单线程高并发:从内核中断到 JS 回调的完整技术栈
设计模式·架构·node.js