vm2 Node.js 库曝多个漏洞,可致沙箱逃逸与任意代码执行
- 浏览次数 25
- 喜欢 0
vm2 Node.js 库被披露存在十几个严重安全漏洞,恶意行为者可利用这些漏洞突破沙箱限制,在受影响系统上执行任意代码。
vm2 是一个开源库,通过拦截和代理 JavaScript 对象,在安全沙箱内运行不可信的 JavaScript 代码,防止沙箱内代码访问宿主环境。
以下是这些安全漏洞:
- CVE - 2026 - 24118(CVSS 评分:9.8):该漏洞允许通过 “lookupGetter” 实现沙箱逃逸,攻击者可在底层宿主系统上运行任意代码。(影响版本 <= 3.10.4,3.11.0 版本修复)
- CVE - 2026 - 24120(CVSS 评分:9.8):这是针对 CVE - 2023 - 37466(CVSS 评分:9.8)的补丁绕过漏洞,攻击者可通过 Promise 对象的 species 属性逃离沙箱,并在底层宿主系统上执行任意命令。(影响版本 <= 3.10.3,3.10.5 版本修复)
- CVE - 2026 - 24781(CVSS 评分:9.8):此漏洞允许通过 “inspect” 函数实现沙箱逃逸,攻击者可在底层宿主系统上运行任意代码。(影响版本 <= 3.10.3,3.11.0 版本修复)
- CVE - 2026 - 26332(CVSS 评分:9.8):该漏洞允许通过 “SuppressedError” 实现沙箱逃逸,攻击者可在底层宿主系统上运行任意代码。(影响版本 <= 3.10.4,3.11.0 版本修复)
- CVE - 2026 - 26956(CVSS 评分:9.8):这是一个保护机制失效漏洞,攻击者可通过触发由 Symbol 到字符串转换产生的 TypeError,实现沙箱逃逸并执行任意代码。(影响版本 3.10.4,在 Node.js 25.6.1 上得到确认,3.10.5 版本修复)
- CVE - 2026 - 43997(CVSS 评分:10.0):这是一个代码注入漏洞,攻击者可获取宿主对象并逃离沙箱,进而执行任意代码。(影响版本 <= 3.10.5,3.11.0 版本修复)
- CVE - 2026 - 43999(CVSS 评分:9.9):该漏洞允许绕过 NodeVM 的内置允许列表,攻击者可加载像 child_process 这样被排除的内置模块,从而实现远程代码执行。(影响版本 3.10.5,3.11.0 版本修复)
- CVE - 2026 - 44005(CVSS 评分:10.0):此漏洞允许攻击者控制的 JavaScript 逃离沙箱并引发原型污染。(影响版本 3.9.6 - 3.10.5,3.11.0 版本修复)
- CVE - 2026 - 44006(CVSS 评分:10.0):通过 “BaseHandler.getPrototypeOf” 的代码注入漏洞,可实现沙箱逃逸和远程代码执行。(影响版本 <= 3.10.5,3.11.0 版本修复)
- CVE - 2026 - 44007(CVSS 评分:9.1):这是一个不当访问控制漏洞,允许沙箱逃逸并在底层宿主系统上执行任意操作系统命令。(影响版本 <= 3.11.0,3.11.1 版本修复)
- CVE - 2026 - 44008(CVSS 评分:9.8):该漏洞允许通过 “neutralizeArraySpeciesBatch ()” 实现沙箱逃逸,攻击者可在底层宿主系统上执行任意命令。(影响版本 <= 3.11.1,3.11.2 版本修复)
- CVE - 2026 - 44009(CVSS 评分:9.8):此漏洞允许通过空原型异常实现沙箱逃逸,攻击者可在底层宿主系统上执行任意命令。(影响版本 <= 3.11.1,3.11.2 版本修复)
此次披露的几个月前,vm2 维护者帕特里克・西梅克(Patrik Simek)刚针对另一个严重的沙箱逃逸漏洞(CVE - 2026 - 22709,CVSS 评分:9.8)发布了补丁,该漏洞可能导致在底层宿主系统上执行任意代码。
这一系列新发现的沙箱逃逸漏洞凸显了在基于 JavaScript 的沙箱环境中安全隔离不可信代码的挑战,西梅克此前也承认未来可能会发现新的绕过方法。建议 vm2 用户更新到最新版本(3.11.2)以获得最佳保护。
消息来源:thehackernews.com;
本文由 HackerNews.cc 翻译整理,封面来源于网络;
转载请注明“转自 HackerNews.cc”并附上原文