Vulnerability · Published May 13, 2026 · Assigned by GitHub_M

CVE-2026-43998vm2: NodeVM require.root bypass via symlink traversal allows sandbox escape

High 8.5

In plain English

A high-severity security flaw in vm2 from patriksimek. Proof-of-concept exploit code is public. The chance it is exploited in the next 30 days is estimated at 0.7% (higher than 54% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.

Severity (CVSS 3.1)8.5High
Exploit odds (30 days)0.7%top 45.8% of all CVEs
Exploited in the wildNo reportsCISA SSVC: poc
Attack toolingNoneno public tooling known

Official description

vm2 is an open source vm/sandbox for Node.js. In 3.10.5, NodeVM's require.root path restriction can be bypassed using filesystem symlinks, allowing sandboxed code to load modules from outside the allowed root directory in host context. Because path validation uses path.resolve() (which does not dereference symlinks) but module loading uses Node's native require() (which does), an attacker can load arbitrary host-realm modules and achieve remote code execution. This vulnerability is fixed in 3.11.0.

Affected packages & fixed versions

EcosystemPackageFixed inAdvisory
npmvm23.11.0GHSA-cp6g-6699-wx9c

Affected products (as reported)

VendorProductVersions
patriksimek vm2 3.10.5

Weakness: CWE-59 · Vector: CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:H/A:H

References