vm2 sandbox escape RCE (CVE-2026-24781)
CVE-2026-24781
CVE-2026-24781: vm2 3.10.x sandbox breakout allows unauthenticated RCE (CVSS 9.8). Update to vm2 3.11.0 to prevent host system takeover.
Patch now - CVE-2026-24781 is a critical sandbox escape in vm2 prior to version 3.11.0 that lets attackers break out of the JavaScript sandbox and execute arbitrary commands on the host system. The fix is in version 3.11.0 - update immediately.
Overview
CVE-2026-24781 (CVSS 9.8) is a sandbox breakout vulnerability in the vm2 module for Node.js, affecting all versions prior to 3.11.0. The flaw resides in the inspect function, which can be abused to write code that escapes the VM2 sandbox and achieves remote code execution on the underlying host. Because the vulnerability is exploitable over the network without authentication or user interaction, any service that runs untrusted JavaScript through vm2 is at immediate risk of full compromise.
Impact
An attacker who sends crafted JavaScript code to a service using vulnerable vm2 can break out of the sandbox and execute arbitrary system commands. This grants the attacker full control of the host operating system, including the ability to read, modify, or delete files, deploy malware, pivot to internal networks, and steal sensitive data. Given the CRITICAL severity and the low attack complexity, organizations should treat this as a severe threat to any application that relies on vm2 for code isolation.
Remediation and Mitigation
The recommended action is to upgrade vm2 to version 3.11.0 or later, which contains the patch for CVE-2026-24781. If an immediate upgrade is not possible, consider the following mitigations:
- Restrict network access to services that use vm2 to trusted sources only.
- Review code that passes user-supplied input to vm2 and add additional input validation.
- Monitor for anomalous process execution or file system activity on affected hosts.
Note that these mitigations reduce risk but do not eliminate the vulnerability. The only complete fix is upgrading to a patched vm2 version.
Security Insight
This vm2 vulnerability is part of a broader pattern of sandbox escapes in JavaScript runtime libraries, where features intended for debugging or introspection become attack surfaces. Similar issues in sandbox tools like Sandboxie and browser iframe policies have shown that sandbox isolation is notoriously difficult to implement securely. The vm2 project has addressed this specific flaw, but organizations should consider whether full process-level isolation or container-based sandboxing provides stronger guarantees for high-risk code execution scenarios. For a complete view of recent sandbox escape vulnerabilities, see the sandbox escape advisories.
Further Reading
Never miss a critical vulnerability
Get real-time security alerts delivered to your preferred platform.
Related Advisories
vm2 is an open source vm/sandbox for Node.js. Prior to version 3.11.0, VM2 suffers from a sandbox breakout vulnerability. This allows attackers to write code which can escape from the VM2 sandbox and ...
vm2 is an open source vm/sandbox for Node.js. Prior to version 3.10.5, the fix for CVE-2023-37466 is insufficient and can be circumvented allowing attackers to write code which can escape from the VM2...
vm2 is an open source vm/sandbox for Node.js. Prior to version 3.11.0, SuppressedError allows attackers to escape the sandbox and run arbitrary code. This issue has been patched in version 3.11.0....
vm2 is an open source vm/sandbox for Node.js. In version 3.10.4, vm2 is vulnerable to full sandbox escape with arbitrary code execution. Attacker code inside VM.run() obtains host process object and r...
Other Vm2 Project Vm2 Vulnerabilities
vm2 is an open source vm/sandbox for Node.js. Prior to version 3.11.0, VM2 suffers from a sandbox breakout vulnerability. This allows attackers to write code which can escape from the VM2 sandbox and ...
vm2 is an open source vm/sandbox for Node.js. Prior to version 3.10.5, the fix for CVE-2023-37466 is insufficient and can be circumvented allowing attackers to write code which can escape from the VM2...
vm2 is an open source vm/sandbox for Node.js. Prior to version 3.11.0, SuppressedError allows attackers to escape the sandbox and run arbitrary code. This issue has been patched in version 3.11.0....
vm2 is an open source vm/sandbox for Node.js. In version 3.10.4, vm2 is vulnerable to full sandbox escape with arbitrary code execution. Attacker code inside VM.run() obtains host process object and r...