vm2 NodeVM `nesting: true` bypasses `require: false` allowing sandbox escape and arbitrary OS command execution
Affects vm2Source GCVE Database
Not known to be exploited · CVSS 9.1 Critical : upgrade to 3.11.1 as a priority.
Data as of 4 Nov 2026, 04:16 UTC
Sources agree
| CNA (GitHub_M) | CVSS 3.1 | 9.1 |
|---|---|---|
| ADP (redhat-SADP) | CVSS 3.1 | 9.9 |
- Patch
- Available – fixed in 3.11.1
CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:H/I:H/A:HExploitation evidence
Disclosed: evidence found.
CVE published 13 May 2026
Detectable: no evidence on record.
No public nuclei template indexed
Weaponized: no evidence on record.
No public exploit code indexed in Metasploit or Exploit-DB
Exploited in the wildExploited: no evidence on record.
Not in CISA KEV and no source reports exploitation
Observed by OffSeq MirageSeen by Mirage: no evidence on record.
No attack traffic recorded by OffSeq Mirage sensors
A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 3 Nov 2026.
What to do
Upgrade vm2 to 3.11.1.
Patches and advisories
Affected software
| Product | Affected | Fixed in |
|---|---|---|
| npmvm2 | Affected
| Fixed in
|
Check your own hosts for these packages with threat-finder (opens in a new tab), our free open-source scanner.
AI-suggested
A patch is available in vm2 version 3.11.1 that fixes this vulnerability. Users should upgrade to version 3.11.1 or later to remediate this issue. Until patched, avoid enabling nesting: true when running untrusted code or ensure that require restrictions are not relied upon as they are bypassed. The vendor advisory confirms the availability of an official fix.
Description
A vulnerability in the vm2 library's NodeVM with the option nesting: true allows sandboxed code to bypass require restrictions and load the vm2 module itself. This enables the creation of an inner NodeVM with unrestricted require capabilities, allowing execution of arbitrary OS commands on the host. The issue arises because nesting: true injects vm2 into the sandbox's builtins unconditionally, overriding require: false or any allowlist. This flaw affects all vm2 versions prior to 3.11.1.
References
- github.com/patriksimek/vm2/security/advisories/GHSA-8hg8-63c5-gwmx (opens in a new tab)
- nvd.nist.gov/vuln/detail/CVE-2026-44007 (opens in a new tab)
- github.com/patriksimek/vm2/commit/46cbbdde4e19b743974c942278080231004146ca (opens in a new tab)
- access.redhat.com/errata/RHSA-2026:50850 (opens in a new tab)
- access.redhat.com/security/cve/CVE-2026-44007 (opens in a new tab)
- bugzilla.redhat.com/show_bug.cgi?id=2477198 (opens in a new tab)
- github.com/patriksimek/vm2 (opens in a new tab)
- github.com/patriksimek/vm2/releases/tag/v3.11.1 (opens in a new tab)
- security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-44007.json (opens in a new tab)
- openwall.com/lists/oss-security/2026/05/05/11 (opens in a new tab)