Description
vm2 is a sandbox that can run untrusted code with whitelisted Node's built-in modules. Prior to version 3.9.15, vm2 was not properly handling host objects passed to `Error.prepareStackTrace` in case of unhandled async errors. A threat actor could bypass the sandbox protections to gain remote code execution rights on the host running the sandbox. This vulnerability was patched in the release of version 3.9.15 of vm2. There are no known workarounds.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| patriksimek | vm2 | < 3.9.15 | — |
Public exploits
Exploit or proof-of-concept code for this vulnerability is publicly available, which lowers the bar for attackers. Treat it as a reason to patch sooner.
GitHub 3 repositories
-
timb-machine-mirrors/seongil-wi-CVE-2023-29017 ★ 2 · Apr 7, 2023
Clone from gist
-
wooung105/Node_CVE-2023-29017 ★ 0 · Jul 12, 2026
Node.js vm2 CVE-2023-29017 reproduction with Docker Compose and PoC
-
passwa11/CVE-2023-29017-reverse-shell ★ 0 · Jul 20, 2023
Sources: PoC-in-GitHub, Metasploit Framework, Exploit-DB — updated daily. Only links are listed; no exploit code is hosted here.
Affected packages
| Ecosystem | Package | Affected | Fixed | Record |
|---|---|---|---|---|
| npm | vm2 | < 3.9.15 | 3.9.15 | GHSA-7jxr-cg7f-gpgv |
Advisories 1
- WID-SEC-2023-1004 vm2: Mehrere Schwachstellen BSI CERT-Bund (WID) · Apr 19, 2023