Read the docs
TI-2026-18236 Aliases CVE-2026-22709GHSA-99p7-6v5w-7xg8

vm2 has a Sandbox Escape

Priority MEDIUM 51CWE-693Published · Updated

Key facts

Attack vector
Network
Privileges required
None
User interaction
None
Attack complexity
Low
Impact type
Security bypass, Code execution
Confidentiality · integrity · availability
High · High · High
Fix status
Fixed

Attack profile from CVSS 3.1 · NVD. Fix status from CNA and GitHub. Impact type from CWE-693 and CWE-94.

Summary

vm2 is an open source vm/sandbox for Node.js. In vm2 prior to version 3.10.2, `Promise.prototype.then` `Promise.prototype.catch` callback sanitization can be bypassed. This allows attackers to escape the sandbox and run arbitrary code. In lib/setup-sandbox.js, the callback function of `localPromise.prototype.then` is sanitized, but `globalPromise.prototype.then` is not sanitized. The return value of async functions is `globalPromise` object. Version 3.10.2 fixes the issue.

Why it matters now

Exploitation None reported CISA SSVC · not in CISA KEV
EPSS 0.0127 69th percentileScored 2026-11-07
Public exploit Yes 1 exploit referenceTagged by NVD
Fix Fixed vm2 (patriksimek): 3.10.2vm2 (npm): 3.10.2

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
None
Automatable
Yes
Technical impact
Total

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
patriksimekvm2before 3.10.23.10.2Patch availableCNA
—vm2 (npm)before 3.10.23.10.2Patch availableGHSA-99p7-6v5w-7xg8
  • vm2 Vendorpatriksimek Affected before 3.10.2 Fixed in 3.10.2 Patch available CNA
  • vm2 (npm) Vendor— Affected before 3.10.2 Fixed in 3.10.2 Patch available GHSA-99p7-6v5w-7xg8

CPE configurations NVD · 1

CPEVersionsRoleVendor
cpe:2.3:a:vm2_project:vm2:*:*:*:*:*:node.js:*:*before 3.10.2Vulnerablepatriksimek
  • cpe:2.3:a:vm2_project:vm2:*:*:*:*:*:node.js:*:* Versions before 3.10.2 Vulnerable ·patriksimek

Remediation

  • Fix · CNA vm2 (patriksimek) Fixed in 3.10.2
  • Fix · GHSA-99p7-6v5w-7xg8 vm2 (npm) Fixed in 3.10.2 Advisory →

Timeline

  1. 2026-10-02 Threatist record created from CVE-2026-22709
  2. 2026-10-03 Alias added: GHSA-99p7-6v5w-7xg8

References

  • 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
See all 31 →

Sources