CVE-2026-43999

CRITICAL

vm2: NodeVM builtin allowlist bypass via `module` builtin's `Module._load` allows sandbox escape

Title source: cna
STIX 2.1

Description

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.

References (1)

Core 1
Core References

Scores

CVSS v3 9.9
EPSS 0.0018
EPSS Percentile 39.0%
Attack Vector NETWORK
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H

CISA SSVC

Vulnrichment
Exploitation poc
Automatable no
Technical Impact total

Details

CWE
CWE-863
Status published
Products (3)
npm/vm2 3.10.5 - 3.11.0npm
patriksimek/vm2 < 3.11.0
vm2_project/vm2 < 3.11.0
Published May 13, 2026
Tracked Since May 13, 2026