CVE-2023-29017
vm2 Sandbox Escape vulnerability
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.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- High
- Integrity
- High
- Availability
- High
Exploit likelihood
What each source reports
CVE List Score used
10.0
vm2 Sandbox Escape vulnerability
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.
- Record
CVE-2023-29017- CVSS 3.1
- 10.0 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H - Weakness
- CWE-913
- Updated
- 2026-11-02
EUVDEUVD-2023-1229
10.0
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.
- Record
EUVD-2023-1229- CVSS 3.1
- 10.0 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H - Updated
- 2026-11-03
GitHub AdvisoriesGHSA-7jxr-cg7f-gpgv
9.8
vm2 vulnerable to sandbox escape
vm2 was not properly handling host objects passed to Error.prepareStackTrace in case of unhandled async errors.
- vm2 version: ~3.9.14
- Node version: 18.15.0, 19.8.1, 17.9.1
Impact
A threat actor can bypass the sandbox protections to gain remote code execution rights on the host running the sandbox.
Patches
This vulnerability was patched in the release of version 3.9.15 of vm2.
Workarounds
None.
- Record
GHSA-7jxr-cg7f-gpgv- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-913
- Updated
- 2026-11-02
NVD
10.0
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.
- Record
CVE-2023-29017- CVSS 3.1
- 10.0 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H - CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-913
- Updated
- 2026-11-02
OSV
10.0
vm2 Sandbox Escape vulnerability
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.
- Record
CVE-2023-29017- CVSS 3.1
- 10.0 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H - Weakness
- CWE-913
- Updated
- 2026-11-02
OSVGHSA-7jxr-cg7f-gpgv
9.8
vm2 vulnerable to sandbox escape
vm2 was not properly handling host objects passed to Error.prepareStackTrace in case of unhandled async errors.
- vm2 version: ~3.9.14
- Node version: 18.15.0, 19.8.1, 17.9.1
Impact
A threat actor can bypass the sandbox protections to gain remote code execution rights on the host running the sandbox.
Patches
This vulnerability was patched in the release of version 3.9.15 of vm2.
Workarounds
None.
- Record
GHSA-7jxr-cg7f-gpgv- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-913
- Updated
- 2026-11-02
OSVROOT-APP-NPM-CVE-2023-29017 No score
CVE-2023-29017 in vm2 - Patched by Root
Root has patched CVE-2023-29017 in the vm2 package for Root:npm. Multiple fixed versions available.
- Record
ROOT-APP-NPM-CVE-2023-29017- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
vm2npm |
before 3.9.15 | 3.9.15 |
vm2Root:npm |
before 3.9.7-aikido.5 | 3.9.7-aikido.53.9.7-aikido.6 |
@rootio/vm2Root:npm |
before 3.9.7-root.io.5 | 3.9.7-root.io.53.9.7-root.io.6 |
Public exploits
Links only. Every CVE stores no exploit code.
| Source | Link | Date |
|---|---|---|
| PoC in GitHub | timb-machine-mirrors/seongil-wi-CVE-2023-29017 | 2023-04-07 |
| PoC in GitHub | passwa11/CVE-2023-29017-reverse-shell | 2023-07-20 |
| PoC in GitHub | wooung105/Node_CVE-2023-29017 | 2026-07-12 |
History
| Recorded | Changed | Sources |
|---|---|---|
| exploits, facts | PoC in GitHub | |
| aliases, published | EUVD | |
| first indexed | CVE List, GitHub Advisories, NVD, OSV, PoC in GitHub |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2023-29017 is a critical vulnerability (CVSS 10.0) in Patriksimek Vm2, published April 6, 2023. Public exploit code exists. EPSS puts the chance of exploitation in the next 30 days at 63.2%, the 99th percentile. Fixed in vm2 3.9.15.
References
github.com/patriksimek/vm2/security/advisories/GHSA-7jxr-cg7f-gpgv
github.com/patriksimek/vm2/issues/515
github.com/patriksimek/vm2/commit/d534e5785f38307b70d3aac1945260a261a94d50
gist.github.com/seongil-wi/2a44e082001b959bfe304b62121fb76d
nvd.nist.gov/vuln/detail/CVE-2023-29017
github.com/advisories/GHSA-7jxr-cg7f-gpgv
github.com/CVEProject/cvelistV5/tree/main/cves/2023/29xxx/CVE-2023-29017.json
github.com/patriksimek/vm2