vm2 is an open source vm/sandbox for Node.js. Prior to 3.11.0, It is possible to reach BaseHandler.getPrototypeOf, which can be used to get arbitrary prototypes. This vulnerability is fixed in 3.11.0.
Security readout for executives and security teams
Plain-English summary
vm2 versions before 3.11.0 may fail to contain code placed inside their Node.js sandbox. If an application uses an affected version to process untrusted code, an attacker could potentially escape that boundary and affect the host application’s data, integrity, or availability.
Executive priority
Treat affected, externally reachable sandbox workloads as an immediate remediation priority because successful escape could compromise the hosting process. Rapidly identify deployments, upgrade them, and temporarily restrict untrusted execution where upgrades cannot be completed promptly. Lower urgency only after confirming vm2 is absent, fixed, or unreachable by untrusted input.
Technical view
The flaw allows access to BaseHandler.getPrototypeOf and arbitrary prototypes, undermining vm2’s isolation model. The supplied CVSS 3.1 score is 10.0, with no privileges or user interaction assumed and complete confidentiality, integrity, and availability impact. The issue is fixed in vm2 3.11.0.
Likely exposure
Exposure is most likely where vm2 below 3.11.0 executes user-controlled or externally supplied JavaScript. Dependency presence alone does not prove exploitability; teams must confirm the runtime version, data path, trust boundary, and whether attackers can submit code to the sandbox.
Exploitation context
The supplied record does not list this CVE in CISA KEV and provides no evidence of active exploitation. The network CVSS vector reflects a worst-case reachable deployment, but vm2 is not automatically internet-exposed; exploitation depends on how the consuming application accepts and executes untrusted code.
Researcher notes
The source bundle identifies CWE-914 and CWE-94 and specifically names BaseHandler.getPrototypeOf as the reachable mechanism. It does not provide enough evidence to characterize exploit reliability, observed attacks, affected downstream applications, or compensating controls. Validate exposure within each application rather than inferring it solely from the CVSS vector.
Mitigation direction
Upgrade vm2 to version 3.11.0 or later.
Update lockfiles and deployed artifacts so the fixed runtime version is actually selected.
Prioritize systems that execute user-controlled or externally sourced JavaScript.
Restrict untrusted sandbox execution until affected deployments are upgraded.
Review applicable Red Hat guidance for vendor-packaged dependencies.
Validation and detection
Inventory direct and transitive vm2 dependencies across applications and build artifacts.
Confirm the runtime-resolved vm2 version is 3.11.0 or later.
Trace whether external users or services can supply code executed through vm2.
Verify rebuilt deployments no longer contain vulnerable vm2 copies.
Test sandbox isolation only in an authorized, non-production environment.
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-914: 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.
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.
CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.
CWE-914 · source CWE mapping
Improper Control of Dynamically-Identified Variables
Improper Control of Dynamically-Identified Variables represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.
Improper Control of Generation of Code ('Code Injection')
Improper Control of Generation of Code ('Code Injection') represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.