CVE-2026-47139 vm2: NodeVM network builtin exclusions bypass via internal _http_client and _http_server
Attackers can bypass network restrictions in vm2 NodeVM by accessing internal HTTP builtins, allowing unauthorized outbound requests and socket listening.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2026-47139?
CVE-2026-47139 is a high-severity vulnerability in patriksimek vm2, published on 12 Jun 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
vm2 is an open source vm/sandbox for Node.js. Prior to version 3.11.4, NodeVM supports excluding public network builtins from the wildcard builtin option. With this configuration direct access to http, https, http2, net, dgram, tls, dns, and dns/promises is blocked. However, Node.js also exposes underscored internal HTTP builtins such as _http_client and _http_server. These are not blocked when the public modules are excluded. Sandboxed code can use these internal builtins to make outbound HTTP requests and open listening HTTP sockets even though the public network modules are denied. This issue has been patched in version 3.11.4.
Weakness: CWE-693
Which versions are affected by CVE-2026-47139?
2 open source packages ship an affected version, including vm2.
| Package | Affected | Fixed in |
|---|---|---|
vm2 npm | All versions | 3.11.4 |
vm2 npm | All versions | 3.11.4 |
How do I fix CVE-2026-47139?
Upgrade vm2 to 3.11.4 or later.
Is CVE-2026-47139 being exploited?
It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-47139 exists.
Sources
Also known as ECHO-639f-b736-8c56, GHSA-r9pm-gxmw-wv6p, MINI-mmhw-7vqp-f7v9, ROOT-APP-NPM-CVE-2026-47139.