CVE-2026-47698: vm2: Sandbox Breakout Using Dangerous Host Proto Mutators
vm2 is an open source vm/sandbox for Node.js. Prior to 3.11.6, lib/bridge.js and lib/setup-sandbox.js fail to block stacked indirection through Function.prototype.call around dangerous host prototype getter and setter mutators, allowing sandbox code to sever a host intrinsic's prototype chain and reach e.constructor.constructor for arbitrary host command execution. This issue is fixed in version 3.11.6.
Security readout for executives and security teams
Plain-English summary
Applications using vm2 to run untrusted JavaScript may not be safely isolated. Before version 3.11.6, malicious sandbox code can escape into the host Node.js process and execute commands, potentially compromising data, application integrity, and availability.
Executive priority
Treat as an immediate remediation priority for internet-facing or multi-tenant services that run untrusted JavaScript through vm2. The reported impact is complete host compromise, although active exploitation is not established. Rapidly identify affected workloads, reduce exposure, and upgrade to 3.11.6 or later.
Technical view
vm2 before 3.11.6 insufficiently blocks stacked Function.prototype.call indirection around dangerous host prototype getter and setter mutators. Sandbox code can sever a host intrinsic’s prototype chain, reach e.constructor.constructor, and obtain arbitrary host command execution. The issue is classified as CWE-913 and scored CVSS 3.1 9.8.
Likely exposure
Exposure is likely where vm2 versions below 3.11.6 execute attacker-controlled or otherwise untrusted JavaScript. Systems not using vm2, using 3.11.6 or later, or never processing untrusted sandbox code are not identified as affected by the supplied sources.
Exploitation context
The supplied CVSS vector indicates low-complexity, unauthenticated, network-reachable exploitation without user interaction when an exposed application passes malicious code into vm2. However, CISA KEV status is false, and the supplied sources provide no evidence of active exploitation in the wild.
Researcher notes
The breakout crosses the sandbox boundary through host prototype mutation rather than an intended vm2 capability. Review the advisory and patch commit to understand the added guards. The supplied evidence establishes arbitrary host command execution but provides no confirmed exploitation telemetry, affected downstream products, or indicators of compromise.
Mitigation direction
Upgrade vm2 to version 3.11.6 or later.
Prioritize services that execute externally supplied or tenant-controlled JavaScript.
Restrict untrusted-code execution until affected deployments are upgraded.
Review the vendor advisory and release notes before production rollout.
Validation and detection
Inventory direct and transitive vm2 dependencies across deployed Node.js applications.
Confirm resolved runtime versions are 3.11.6 or later, not only manifest declarations.
Identify every path that submits untrusted JavaScript to vm2.
Test upgraded sandbox behavior in staging against prohibited host-object mutation.
Review affected Node.js hosts for unexpected command execution or process activity.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cwe · low confidence lookup
CWE-913: Exact CWE lookup
Use the exact CWE identifier as the starting point before reviewing related ATT&CK behavior. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
1CVSS vectors
3Timeline events
1ADP providers
4Source links
SSVC decision data
CISA-ADPCISA Coordinator
Timestamp
Version
2.0.3
Exploitation: pocAutomatable: yesTechnical Impact: total
CVSS vector scores
1 official score
We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.
CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.
CWE-913 · source CWE mapping
Improper Control of Dynamically-Managed Code Resources
Improper Control of Dynamically-Managed Code Resources represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.