CVE-2023-29017 in the critical feed json
vm2 Sandbox Escape vulnerability
published 2023-04-06 3 y ago modified 2026-09-10 1 mo ago also GHSA-7jxr-cg7f-gpgv , EUVD-2023-1229
- cvss
- 10.0
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 63.2%
- EPSS 63.2% chance of exploitation in 30 days, percentile 99.2%
- public exploits
- 0
- none known
Summary
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.
Patch / fix
Vendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2023-29017 updated cvss 9.8
vm2: sandbox escape
-
Red Hat Advanced Cluster Management for Kubernetes 2 rhacm2/console-rhel8affected: workaround, no fix available
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
CISA SSVC
- Exploitation
- Proof of concept is public
- Automatable
- yes
- Technical impact
- total
- Assessed
- 20 mo ago
Exploit prediction
63.19% chance of exploitation in the next 30 days, higher than 99.2% of all scored CVEs (FIRST EPSS, 2026-11-08).
Exploits and checks
- github.com https://github.com/patriksimek/vm2/issues/515 referenced PoC, tagged "exploit" by a source, unverified
- gist.github.com https://gist.github.com/seongil-wi/2a44e082001b959bfe304b62121fb76d referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 10.0 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H |
| NVD | 3.1 | 9.8 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
| GitHub | 3.1 | 9.8 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| npm | vm2 | <3.9.15 |
3.9.15 |
Affected products
- patriksimek vm2
Classification
- Weakness
-
- CWE-913 Improper Control of Dynamically-Managed Code Resources
References
-
github.com
/patriksimek/vm2/commit/d534e5785f38307b70d3aac1945260a261a94d50
web, patch
-
github.com
/patriksimek/vm2/issues/515
web, exploit, issue-tracking
-
gist.github.com
/seongil-wi/2a44e082001b959bfe304b62121fb76d
web, exploit
-
github.com
/patriksimek/vm2/security/advisories/GHSA-7jxr-cg7f-gpgv
web, vendor-advisory
-
nvd.nist.gov
/vuln/detail/CVE-2023-29017
advisory
-
github.com
/patriksimek/vm2
package
Sources
- CVE List CVE-2023-29017
- GitHub Advisory GHSA-7jxr-cg7f-gpgv
- NVD CVE-2023-29017
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.