CVE-2026-44000 vm2: sandbox boundary bypass via host Promise resolution preserving host object identity
Attackers can bypass sandbox boundaries in vm2 by exploiting host Promise resolution, leading to code execution and privilege escalation.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2026-44000?
CVE-2026-44000 is a medium-severity code injection vulnerability in patriksimek vm2, published on 13 May 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
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.
Weakness: CWE-693
Which versions are affected by CVE-2026-44000?
2 open source packages ship an affected version, including vm2. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
vm2 npm | All versions | 3.11.0 |
vm2 npm | All versions | 3.11.0 |
Products include Vm2 Project Vm2.
How do I fix CVE-2026-44000?
Upgrade vm2 to 3.11.0 or later.
Upgrade, and never evaluate templates, expressions or code built from user input. More about Code injection.
Is CVE-2026-44000 being exploited?
It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-44000 exists.
Other vulnerabilities in patriksimek vm2
Sources
Also known as GHSA-mpf8-4hx2-7cjg, ROOT-APP-NPM-CVE-2026-44000.