vm2: sandbox boundary bypass via host Promise resolution preserving host object identity
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Impact type
- Security bypass
- Confidentiality · integrity · availability
- Low · Low · None
- Fix status
- Fixed
Attack profile from CVSS 3.1 · NVD. Fix status from CNA, GitHub and Red Hat. Impact type from CWE-693.
Summary
vm2 is an open source vm/sandbox for Node.js. Prior to 3.11.0, a sandbox boundary violation in vm2 allows host object identity to cross into the sandbox through host Promise resolution. When a host-side Promise that resolves to a host object is exposed to the sandbox, the value delivered to the sandbox .then() callback preserves host identity. This allows the sandbox to interact with the host object directly, including performing identity checks using host-side WeakMap and mutating host object state from inside the sandbox. This behavior occurs because the Promise fulfillment wrapper uses ensureThis() instead of the stronger cross-realm conversion path (from() / proxy wrapping). If no prototype mapping is found, ensureThis() returns the original object. As a result, objects resolved by host Promises can cross the sandbox boundary without proper isolation. This vulnerability is fixed in 3.11.0.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- Poc
- Automatable
- Yes
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| patriksimek | vm2 | before 3.11.0 | 3.11.0 | Patch available | CNA |
| — | vm2 (npm) | before 3.11.0 | 3.11.0 | Patch available | GHSA-mpf8-4hx2-7cjg |
- vm2 Vendorpatriksimek Affected before 3.11.0 Fixed in 3.11.0 Patch available CNA
- vm2 (npm) Vendor— Affected before 3.11.0 Fixed in 3.11.0 Patch available GHSA-mpf8-4hx2-7cjg
CPE configurations NVD · 1
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:vm2_project:vm2:*:*:*:*:*:node.js:*:* | before 3.11.0 | Vulnerable | patriksimek |
- cpe:2.3:a:vm2_project:vm2:*:*:*:*:*:node.js:*:* Versions before 3.11.0 Vulnerable ·patriksimek
Remediation
- Fix · CNA vm2 (patriksimek) Fixed in 3.11.0
- Fix · GHSA-mpf8-4hx2-7cjg vm2 (npm) Fixed in 3.11.0 Advisory →
Red Hat 1 advisory
- RHSA-2026:50850 Released 2026-08-05 · Red Hat rating ImportantRed Hat Ansible Automation Platform 2.1 security update
- Red Hat Ansible Automation Platform 2.1 registry.redhat.io/ansible-automation-platform/automation-portal
Vendor assessments
Red Hat
Red Hat rating: Moderate. Red Hat's page for this CVE →
| Product | Status | Plan or fix |
|---|---|---|
| Red Hat Ansible Automation Platform 2.1 | Fixed | RHSA-2026:50850 |
Not affected: 1 product
- Red Hat Developer Hub 1
Timeline
- 2026-10-02 Threatist record created from CVE-2026-44000
- 2026-10-03 Alias added: GHSA-mpf8-4hx2-7cjg
- 2026-10-27 Affected versions changed · Red Hat
References
More patriksimek Vm2 vulnerabilities
- TI-2023-14382 Sandbox Escape in vm2 CVSS 3.1CRITICAL 10.0
- TI-2023-13478 vm2 Sandbox Escape vulnerability CVSS 3.1CRITICAL 10.0
- TI-2026-33200 vm2: Sandbox Breakout Using Async Generator CVSS 3.1CRITICAL 9.8
- TI-2026-32052 vm2: Sandbox Breakout Through Null Proto Exception CVSS 3.1CRITICAL 9.8
- TI-2026-32051 vm2 has sandbox breakout via `neutralizeArraySpeciesBatch` CVSS 3.1CRITICAL 9.8
- TI-2026-32049 vm2: Sandbox Escape CVSS 3.1CRITICAL 10.0
Sources
- CVE-2026-44000 · CVE Program
- CVE-2026-44000 · NVD
- FIRST EPSS
- GHSA-mpf8-4hx2-7cjg · GitHub Advisory Database · CC BY 4.0
- CVE-2026-44000 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences