vm2 is an open source vm/sandbox for Node.js. From 3.9.6 to 3.10.5, vm2's bridge exposes mutable proxies for real host-realm intrinsic prototypes and then forwards sandbox writes into the underlying host objects with otherReflectSet() and otherReflectDefineProperty(), which lets attacker-controlled JavaScript running in a default VM or inherited NodeVM mutate shared host Object.prototype, Array.prototype, and Function.prototype from inside the sandbox This vulnerability is fixed in 3.11.0.
Security readout for executives and security teams
Plain-English summary
Applications using vulnerable vm2 versions to run attacker-controlled JavaScript may allow that code to alter shared Node.js host behavior. This can undermine sandbox isolation, corrupt application state, or disrupt service. The supplied CVSS rating is 10.0, making exposed deployments urgent to identify and remediate.
Executive priority
Treat as an immediate remediation priority wherever untrusted JavaScript reaches an affected vm2 sandbox. Rapidly inventory exposure, restrict risky execution paths, and upgrade. Systems bundling vm2 without processing attacker-controlled code remain affected by version but may have lower practical exposure; validate rather than assume safety.
Technical view
In vm2 3.9.6 through 3.10.5, bridge-created mutable proxies expose host-realm intrinsic prototypes. Sandbox writes are forwarded to host objects, enabling prototype mutation of Object, Array, and Function. This crosses the intended sandbox boundary and can affect host integrity and availability. Version 3.11.0 contains the stated fix.
Likely exposure
Exposure requires vm2 versions 3.9.6 through 3.10.5 and execution of attacker-controlled JavaScript in a default VM or inherited NodeVM. Risk is greatest where untrusted users, tenants, automation, or uploaded content can submit code for sandboxed execution. The sources do not quantify affected deployments.
Exploitation context
The supplied record marks this CVE as absent from KEV and provides no evidence of active exploitation. The network-based CVSS vector assumes low complexity, no privileges, and no user interaction, but actual reachability depends on whether an application accepts untrusted JavaScript and passes it to vm2.
Researcher notes
The core issue is host prototype mutation through bridge proxies and forwarded property writes, mapped to prototype pollution, improper isolation, and code-injection-related CWEs. The supplied impact emphasizes host integrity and availability rather than confidentiality. No exploit status, indicators of compromise, or additional fixed branches are established by the provided bundle.
Mitigation direction
Upgrade vm2 to version 3.11.0 or later.
Prioritize services that execute externally supplied or tenant-controlled JavaScript.
Restrict untrusted code execution until affected services are upgraded.
Review applicable Red Hat guidance for packaged downstream components.
Validation and detection
Inventory direct and transitive vm2 dependencies and resolve deployed versions.
Confirm no production instance runs vm2 3.9.6 through 3.10.5.
Identify every pathway that submits untrusted JavaScript to VM or inherited NodeVM.
Run existing isolation and regression tests after upgrading to vm2 3.11.0 or later.
Check logs and monitoring for unexplained application state changes or service disruption.
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-1321: 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.
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.
Code execution and unsafe deserialization weaknesses often justify reviewing execution behavior and process telemetry. 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.
The CVE wording references privilege impact, so privilege escalation and authorization behavior review may help. This is a Glexia inferred lookup path, not an official MITRE, ATT&CK, or CVE Program 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.
2CVSS vectors
5Timeline events
2ADP providers
6Source links
SSVC decision data
CISA-ADPCISA Coordinator
Timestamp
Version
2.0.3
Exploitation: pocAutomatable: yesTechnical Impact: total
CVSS vector scores
2 official scores
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.