CVE-2026-44007vm2是Node.js的开源沙箱库。在3.11.1之前版本,当NodeVM启用nesting选项时,沙箱代码可绕过外层require限制加载vm2模块。攻击者利用此特性可构造不受限的内部沙箱,进而在宿主机执行任意操作系统命令,完全控制系统。
该漏洞源于vm2在处理嵌套沙箱配置时的逻辑缺陷。当外层NodeVM配置了`nesting: true`时,沙箱内部的代码可以通过`require('vm2')`无条件引入vm2模块,即使外层配置了`require: false`或其他限制。一旦获得vm2模块的访问权,攻击者可以在沙箱内实例化一个新的NodeVM对象,并配置其为不受限模式(例如移除require限制)。通过这个新的沙箱实例,攻击者可以直接调用Node.js的`child_process`模块或其他系统API,从而逃逸出原始沙箱环境,在宿主操作系统上执行任意命令。此问题影响所有在nesting模式下运行不可信代码的应用。