vm2 is an open source vm/sandbox for Node.js. Prior to 3.11.0, NodeVM's builtin allowlist can be bypassed when the module builtin is allowed (including via the '*' wildcard). The module builtin exposes Node's Module._load(), which loads any module by name directly in the host context, completely bypassing vm2's builtin restriction. This allows sandboxed code to load excluded builtins like child_process and achieve remote code execution. This vulnerability is fixed in 3.11.0.
Fix
Patch, vendor advisory and mitigation references on NVD 2
- https://github.com/patriksimek/vm2/security/advisories/GHSA-947f-4v7f-x2v8 Exploit, Mitigation, Vendor Advisory
- https://github.com/patriksimek/vm2/security/advisories/GHSA-947f-4v7f-x2v8 Exploit, Mitigation, Vendor Advisory
Every line above is quoted from NVD, CISA, Microsoft, the vendor's own advisory or DISA; nothing is generated.
Change history 1
- First seenCVSS 9.9 · vm2_projectNVD modified 2026-10-26 17:10
Affected (CPE criteria) 1
cpe:2.3:a:vm2_project:vm2:*:*:*:*:*:node.js:*:*
References 6
- https://github.com/patriksimek/vm2/security/advisories/GHSA-947f-4v7f-x2v8 Exploit, Mitigation, Vendor Advisory
- https://access.redhat.com/errata/RHSA-2026:50850
- https://access.redhat.com/security/cve/CVE-2026-43999
- https://bugzilla.redhat.com/show_bug.cgi?id=2477196
- https://github.com/patriksimek/vm2/security/advisories/GHSA-947f-4v7f-x2v8 Exploit, Mitigation, Vendor Advisory
- https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-43999.json