vm2 is an open source vm/sandbox for Node.js. Prior to 3.11.0, it is possible to obtain the host Object. There are various ways to use the host Object, to escape the sandbox, one example would be using HostObject.getOwnPropertySymbols to obtain Symbol(nodejs.util.inspect.custom). This vulnerability is fixed in 3.11.0.
Security readout for executives and security teams
Plain-English summary
vm2 is a Node.js sandbox used to run code with isolation. This flaw can break that isolation before version 3.11.0, letting sandboxed code access host objects. For systems that run untrusted or user-supplied JavaScript, this is a critical boundary failure, not a minor library bug.
Executive priority
Treat this as a same-cycle remediation item for any product that executes customer, tenant, or externally supplied JavaScript. The business risk is full sandbox escape, which can undermine data isolation and service integrity.
Technical view
CVE-2026-43997 affects patriksimek/vm2 versions before 3.11.0. The advisory states attackers can obtain the host Object and escape the sandbox. CVSS 3.1 is 10.0 with network attack vector, no privileges, no user interaction, changed scope, and high confidentiality, integrity, and availability impact.
Likely exposure
Exposure is most likely in Node.js applications, automation platforms, developer tools, or SaaS features that use vm2 below 3.11.0 to execute untrusted JavaScript, especially where vm2 is pulled as a direct or transitive dependency.
Exploitation context
The source bundle does not show CISA KEV listing or cited evidence of active exploitation. However, the vulnerability is remotely reachable by CVSS assessment and impacts the sandbox trust boundary, making vulnerable internet-facing or multi-tenant code-execution services urgent to assess.
Researcher notes
The public description identifies host Object access as the core issue and gives one illustrative path involving host object symbols. Avoid assuming additional affected products beyond vm2 before 3.11.0 unless dependency evidence confirms use.
Mitigation direction
Upgrade vm2 to version 3.11.0 or later.
Identify direct and transitive vm2 dependencies in all Node.js deployments.
Temporarily restrict untrusted code execution where affected vm2 remains deployed.
Check vendor guidance, including Red Hat status, for packaged or bundled exposure.
Redeploy rebuilt artifacts after dependency updates, not only source changes.
Validation and detection
Review package manifests and lockfiles for vm2 versions below 3.11.0.
Confirm the deployed runtime dependency tree matches the remediated lockfile.
Search SBOMs and container images for vulnerable vm2 versions.
Verify any service executing user-supplied JavaScript has been upgraded or isolated.
Run regression tests covering sandboxed-code execution paths after updating.
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-653: 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
5Source 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-653 · source CWE mapping
Improper Isolation or Compartmentalization
Improper Isolation or Compartmentalization 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.