Description
vm2 is an open source vm/sandbox for Node.js. Prior to version 3.11.0, VM2 suffers from a sandbox breakout vulnerability. This allows attackers to write code which can escape from the VM2 sandbox and execute arbitrary commands on the host system. This issue has been patched in version 3.11.0.
Published: 2026-05-04
Score: 9.8 Critical
EPSS: n/a
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

vm2 is an open-source JavaScript virtual machine designed to sandbox Node.js code. The flaw arises from an unsafe use of the __lookupGetter__ method, allowing code executed inside the vm2 sandbox to escape and execute arbitrary commands on the host system. This represents a classic code injection weakness (CWE‑94) combined with inadequate isolation controls (CWE‑693). If exploited, an attacker could compromise the entire host environment, gaining full read/write/execute privileges.

Affected Systems

The issue affects the patriksimek vm2 package in all releases prior to version 3.11.0. Systems that incorporate the older vm2 library and provide untrusted code to the sandbox are vulnerable. The vulnerability was fixed in vm2 releases starting at v3.11.0.

Risk and Exploitability

The vulnerability has a CVSS score of 9.8, indicating critical severity. No EPSS score is available, and it is not listed in the CISA KEV catalog. The likely attack vector is a user who can supply code to vm2; via malicious exploitation of __lookupGetter__, that code can break out of the sandbox. The exploit requires the attacker to run within a Node.js process that includes vm2, so it may be local or remote depending on how the library is exposed. Timely patching is essential due to the high impact of remote code execution.

Generated by OpenCVE AI on May 4, 2026 at 19:00 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade vm2 to version 3.11.0 or later, which removes the unsafe __lookupGetter__ usage.
  • If an immediate upgrade is not possible, eliminate any use of vm2 for untrusted code and consider replacing it with a more secure sandboxing solution.
  • Apply input validation and strict access controls around code that is executed within vm2, ensuring that only trusted code is evaluated in the sandbox.

Generated by OpenCVE AI on May 4, 2026 at 19:00 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Mon, 04 May 2026 19:15:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'poc', 'Technical Impact': 'total'}, 'version': '2.0.3'}


Mon, 04 May 2026 19:00:00 +0000

Type Values Removed Values Added
First Time appeared Patriksimek
Patriksimek vm2
Vendors & Products Patriksimek
Patriksimek vm2

Mon, 04 May 2026 17:15:00 +0000

Type Values Removed Values Added
Description vm2 is an open source vm/sandbox for Node.js. Prior to version 3.11.0, VM2 suffers from a sandbox breakout vulnerability. This allows attackers to write code which can escape from the VM2 sandbox and execute arbitrary commands on the host system. This issue has been patched in version 3.11.0.
Title VM2 Sandbox Breakout Through __lookupGetter__
Weaknesses CWE-693
CWE-94
References
Metrics cvssV3_1

{'score': 9.8, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H'}


cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-05-04T18:24:33.166Z

Reserved: 2026-01-21T18:38:22.472Z

Link: CVE-2026-24118

cve-icon Vulnrichment

Updated: 2026-05-04T18:24:29.528Z

cve-icon NVD

Status : Received

Published: 2026-05-04T17:16:21.643

Modified: 2026-05-04T19:16:02.577

Link: CVE-2026-24118

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-05-04T19:15:06Z

Weaknesses