---
title: "CVE-2026-92946: vm2: NodeVM `require.external` without an explicit `require.root` grants unrestricted host filesystem access and full RCE"
url: https://erroneo.us/security/cve/CVE-2026-92946/
description: "CVE-2026-92946 (vm2 (npm)): vm2 before 3.11.7 contains a remote code execution vulnerability when require.external is enabled without an explicit…"
type: vulnerability-record
section: "Security Digest"
date_published: 2026-09-17
date_modified: 2026-10-07
publisher: erroneo.us
author: erroneo.us Security Desk
cve: "CVE-2026-92946"
kev: false
cvss: 10
epss: 0.00857
license: All rights reserved. Quote with attribution and a link.
---

# CVE-2026-92946: vm2: NodeVM `require.external` without an explicit `require.root` grants unrestricted host filesystem access and full RCE

**Signal:** Critical and remotely reachable. No known exploitation yet, but it is network-reachable without credentials. (Computed from CISA KEV, EPSS and CVSS; not an editorial verdict.)

## Should you act?

- No confirmed exploitation. It is not in CISA’s KEV catalog and CISA’s SSVC assessment records no known exploitation. That can change quickly after a public write-up; re-check if you are affected.
- EPSS 0.9% , percentile 58: FIRST’s model estimates a 0.9% chance of exploitation activity in the next 30 days, higher than 58% of all scored CVEs (moderate). EPSS is a probability, not a verdict.
- Remotely reachable with no login and no user interaction. If the vulnerable service is exposed to the internet, prioritize it.
- Only applies if your dependency tree includes vm2 (npm) <= 3.11.6, fixed in 3.11.7 . Check your lockfile, including transitive dependencies.
- Editorial verdict: Check exposure. vm2: 22 Critical Sandbox Escapes, Fixed in 3.12.2 — If anything outside your trust boundary can get code into vm2, upgrade to 3.12.2 today and plan to move that code out of process; if vm2 only runs your own code, upgrade on a normal cycle.

## What it is

vm2 before 3.11.7 contains a remote code execution vulnerability when require.external is enabled without an explicit require.root that excludes nodemodules. Sandboxed code can require vm2's own package, instantiate an unrestricted NodeVM instance, and execute arbitrary host OS commands via childprocess.

## Affected packages

- npm `vm2` <= 3.11.6 → fixed: 3.11.7

## Affected products (CVE record)

- patriksimek vm2: < 3.11.7

## Severity

- VulnCheck CVSS 4.0: 10 `CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H`
- VulnCheck CVSS 3.1: 10 `CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H`
- GitHub CVSS 3.1: 10.0 `CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H`

## Exploitation

- CISA KEV: not listed (no confirmed in-the-wild exploitation known to CISA).
- CISA SSVC assessment: exploitation none , automatable yes , technical impact total .
- FIRST EPSS (model of 2026-10-21): 0.86% probability of exploitation activity in the next 30 days; percentile 58.

## Sources

- [GitHub Security Advisory (GHSA-j3hm-6rg5-mchv)](https://github.com/patriksimek/vm2/security/advisories/GHSA-j3hm-6rg5-mchv)
- [GitHub Advisory GHSA-j3hm-6rg5-mchv](https://github.com/advisories/GHSA-j3hm-6rg5-mchv)
- [CVE.org record CVE-2026-92946](https://www.cve.org/CVERecord?id=CVE-2026-92946)
- [NVD entry CVE-2026-92946](https://nvd.nist.gov/vuln/detail/CVE-2026-92946)
- [VulnCheck Advisory: vm2 before 3.11.7 Remote Code Execution via require.external](https://www.vulncheck.com/advisories/vm2-before-3.11.7-remote-code-execution-via-require-external)
- [github.com](https://github.com/patriksimek/vm2/commit/903017c8a1eae9aba947ec854468b48155e79f86)
- [github.com](https://github.com/patriksimek/vm2/releases/tag/v3.11.7)

---
Source page: https://erroneo.us/security/cve/CVE-2026-92946/ · Security Digest: https://erroneo.us/security/ · More: https://erroneo.us/llms.txt
