CVE-2023-29199
vm2 Sandbox Escape vulnerability
Impact
There exists a vulnerability in source code transformer (exception sanitization logic) of vm2 for versions up to 3.9.15, allowing attackers to bypass `handleException()` and leak unsanitized host exceptions which can be used to escape the sandbox and run arbitrary code in host context. ### 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.16` of `vm2`. ### Workarounds None. ### References Github Issue - https://github.com/patriksimek/vm2/issues/516 PoC - https://gist.github.com/leesh3288/f05730165799bf56d70391f3d9ea187c ### For more information If you have any questions or comments about this advisory: - Open an issue in [VM2](https://github.com/patriksimek/vm2) Thanks to [Xion](https://twitter.com/0x10n) (SeungHyun Lee) of [KAIST Hacking Lab](https://kaist-hacking.github.io/) for disclosing this vulnerability.
Affected packages
| Ecosystem | Package | Affected | Fixed in |
|---|---|---|---|
| npm | vm2 | < 3.9.16 | 3.9.16 |
Affected products
| Vendor | Product | Affected versions |
|---|---|---|
| Vm2 Project | Vm2 | before 3.9.16 |
Weakness classification
References
- NVD record
- CVE.org record
- GitHub advisory
- https://gist.github.com/leesh3288/f05730165799bf56d70391f3d9ea187c
- https://github.com/patriksimek/vm2/commit/24c724daa7c09f003e556d7cd1c7a8381cb985d7
- https://github.com/patriksimek/vm2/issues/516
- https://github.com/patriksimek/vm2/releases/tag/3.9.16
- https://github.com/patriksimek/vm2/security/advisories/GHSA-xj72-wvfv-8985
- https://github.com/advisories/GHSA-xj72-wvfv-8985
- https://nvd.nist.gov/vuln/detail/CVE-2023-29199