CVE-2026-92934: vm2 before 3.11.8 Sandbox Escape RCE via AggregateError
vm2 before 3.11.8 contains an incomplete fix for Error.cause sanitization that allows sandbox escape when revisited host-wrapped AggregateError objects are caught within a single exception handler traversal. Attackers can exploit cycle detection bypass in handleException to access unsanitized host proxies embedded in the errors array, enabling full remote code execution and process information disclosure from the sandbox.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
vm2to a version that resolves this vulnerability.Fixed in 3.11.8 - Compensating control
Harden the environment to reduce impact of sandbox escape by isolating the Node.js runtime/container and restricting egress/ingress so that any potential RCE has limited access.
Event History
Frequently Asked Questions
Who is exposed to this issue?
Applications using npm/vm2 before 3.11.8 to run untrusted code in a sandbox are exposed. Successful exploitation can escape the sandbox, execute code in the host process, and disclose process information.
What does an attacker need to exploit it?
An attacker needs the ability to execute crafted code within the vm2 sandbox. The issue does not require authentication or user interaction, but exploitation has high attack complexity and depends on triggering the affected exception-handling path with host-wrapped AggregateError objects.
Are default vm2 deployments affected?
The available information identifies all vm2 versions before 3.11.8 as affected, but does not state whether a particular default application configuration reaches the vulnerable path. Exposure depends on whether untrusted sandboxed code can trigger the relevant exception handling.
How can I determine whether my application is affected?
Check whether the application depends on npm/vm2 and whether the resolved version is earlier than 3.11.8. Prioritize systems that accept or execute attacker-controlled code through vm2, especially where sandbox exceptions may be handled by the host application.