CVE-2026-43999

Node.js (vm2) · vm2

The vm2 sandbox for Node.js contains a bypass in its builtin allowlist, enabling unauthorized access to restricted modules and arbitrary code execution.

Executive summary

A critical sandbox bypass in the vm2 library allows attackers to load forbidden modules and execute arbitrary code on the host system.

Vulnerability

The sandbox's builtin allowlist can be bypassed by abusing the module builtin. This allows sandboxed code to access Node.js Module._load() to load restricted modules like child_process, resulting in host-level code execution.

Business impact

The CVSS score of 9.9 highlights the extreme severity of this flaw. By achieving remote code execution outside the sandbox, an attacker can gain full control over the host, leading to data loss, system destruction, or persistent unauthorized access.

Remediation

Immediate Action: Update the vm2 library to version 3.11.0 or later to ensure the builtin allowlist is properly enforced.

Proactive Monitoring: Audit Node.js application logs for attempts to load sensitive modules such as child_process, fs, or net from within sandboxed environments.

Compensating Controls: Use strict environment variable configurations to restrict the capabilities of the Node.js process and prevent the spawning of child processes.

Exploitation status

Public Exploit Available: Unknown

Analyst recommendation

This is a critical vulnerability that effectively nullifies the isolation provided by vm2. It is imperative to update the library immediately and review all code that relies on this sandbox for security purposes.