CVE-2026-92949 vm2 3.9.6 before 3.11.7 Sandbox Bypass via Accessor Descriptor
Attackers can bypass vm2 sandbox restrictions to execute arbitrary code or escalate privileges by exploiting accessor property handling flaws.
- 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-92949?
CVE-2026-92949 is a medium-severity vulnerability in patriksimek vm2, published on 17 Sep 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
vm2 versions from 3.9.6 before 3.11.7 fail to properly restrict access to accessor properties on frozen objects, allowing sandboxed scripts to bypass vm.freeze() and vm.readonly() protections. Attackers can use Object.getOwnPropertyDescriptor() or __lookupSetter__() to extract and invoke host object setters directly, mutating properties the embedder explicitly marked read-only.
Weakness: CWE-471
Which versions are affected by CVE-2026-92949?
2 open source packages ship an affected version, including vm2.
| Package | Affected | Fixed in |
|---|---|---|
vm2 npm | From 3.9.6 | 3.11.7 |
vm2 npm | From 3.9.6 | 3.11.7 |
How do I fix CVE-2026-92949?
Upgrade vm2 to 3.11.7 or later.
Is CVE-2026-92949 being exploited?
It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-92949 exists.
Sources
Also known as ECHO-c0b6-cb12-097d, GHSA-633r-hq9m-c4ff, MINI-rrrj-fpfx-qx8v.