The vm2 Node.js sandboxing library was hit by a wave of critical sandbox-escape vulnerabilities that let attackers executing untrusted JavaScript break out and run arbitrary commands on the host. Reported flaws include CVE-2026-24120, which bypasses an earlier Promise-species mitigation to reach the host Function constructor; CVE-2026-24118, which abuses __lookupGetter__, Buffer.apply, and prototype traversal; CVE-2026-24781, which leverages inspect proxy unwrapping; CVE-2026-26332, which pivots through SuppressedError; and CVE-2026-26956, which uses WebAssembly JSTag exception handling on Node.js 25+. Across the advisories, affected versions span the 3.10.x branch and earlier, with several issues requiring only the ability to submit code to a vm2 instance and no authentication or user interaction.
The project responded with security releases v3.10.5 and v3.11.0, with v3.11.0 closing 13 advisories including sandbox escapes, denial-of-service bugs, information disclosure, and prototype pollution. Maintainers also patched a separate NodeVM issue tracked as GHSA-m4wx-m65x-ghrr, where enabling nesting: true with omitted or falsy require settings could expose the vm2 package inside the sandbox and lead to host remote code execution. The releases added broader hardening measures such as bufferAllocLimit, stricter handling of dangerous built-ins, and filesystem checks, while maintainers warned that organizations using vm2 to run fully untrusted code should upgrade immediately and avoid treating in-process JavaScript sandboxing as a sole security boundary.

Mallory correlates global threat intelligence with your attack surface — know if you’re exposed before adversaries strike.
11 events from the most recent confirmed update back to the earliest known activity.
A sandbox escape vulnerability in vm2 was disclosed as CVE-2026-47131, affecting versions prior to 3.11.4. The flaw uses specific Buffer.call.call sequences and Node.js ERR_INVALID_ARG_TYPE handling to obtain the host TypeError constructor and achieve arbitrary code execution outside the sandbox.
vm2 patched CVE-2026-47209 in version 3.11.4, fixing a flaw in bridge.js where the BaseHandler.set trap ignored the receiver parameter and could write inherited property assignments onto host objects. The bug enabled host object property injection through the prototype chain, including dangerous cross-realm Symbol keys such as nodejs.util.promisify.custom.
A GitHub security advisory described a vm2 NodeVM sandbox escape in which the dangerous builtin denylist omitted process and inspector/promises, allowing sandboxed code to regain host execution primitives and achieve host RCE in affected configurations. The advisory said the issue impacts deployments that allow those builtins or wildcard builtin access and recommended adding them to the dangerous builtin blocklist.
A vm2 security fix was committed to close GHSA-76w7-j9cq-rx2j, a sandbox escape caused by Promise species handling in localPromise that could expose an unbridged host RangeError and lead to host Function access and possible RCE. The patch resets Symbol.species before invoking the host Promise.then path so downstream promises stay wrapped and exceptions are bridged safely.
A vm2 security fix was committed to close the NESTING_OVERRIDE resolver issue, preventing cases where nesting:true combined with omitted or falsy require settings could expose vm2 inside the sandbox and enable host RCE.
A public tracking issue for the NetBox Jinja2 sandbox bypass and RCE vulnerability was opened on May 4, 2026, following the earlier disclosure-process problems described in the report.
vm2 released version 3.11.0 as a coordinated security update that closed 13 advisories, including multiple sandbox-escape RCE flaws, denial-of-service issues, information disclosure, and prototype pollution weaknesses. The release also added hardening features such as buffer allocation limits and stricter defaults for dangerous builtins.
The @fastify/middie plugin fixed CVE-2026-6270 in version 9.3.2, resolving a middleware path prefix propagation flaw that could leave child plugin routes unprotected despite parent-scope authentication middleware.
According to the report on CVE-2026-29514, coordinated disclosure emails about the NetBox Jinja2 sandbox bypass were sent on March 10, 2026, but were reportedly lost during the disclosure process.
The vm2 project released version 3.10.5 with security hardening and fixes for multiple sandbox escape paths, including protections against access to dangerous code-execution primitives such as the Function constructor.
The n8n project fixed CVE-2025-62726 in version 1.113.0, addressing a flaw where cloning a malicious repository and later committing could execute attacker-controlled pre-commit hooks with n8n process privileges.
Vulnerabilities, threat actors, malware, products, organizations, and breaches Mallory has linked to this story.
18 references tracked. Mallory keeps watching after this page renders.
cvefeed.io
Open sourcecvefeed.io
Open sourcecvefeed.io
Open sourcecvefeed.io
Open sourcegithub.com
Open sourcezeropath.com
Open sourcegithub.com
Open sourcezeropath.com
Open sourceMap indicators from this story to your assets and identify affected systems in minutes.
Every observed campaign, victim, and pivot linked to actors named in this story.
Malware, exploits, and IOCs connected to the activity described here.
YARA, Sigma, and Snort rules deployed to your SIEM as soon as they’re published.
Get matching new stories delivered to your team as they break — not the next morning.
Ask questions about this story and take action on the answers.