Description
vm2 is a sandbox that can run untrusted code with Node's built-in modules. A sandbox escape vulnerability exists in vm2 for versions up to and including 3.9.17. It abuses an unexpected creation of a host object based on the specification of `Proxy`. As a result a threat actor can 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.18` of `vm2`. Users are advised to upgrade. There are no known workarounds for this vulnerability.
Remediation
References
https://gist.github.com/arkark/e9f5cf5782dec8321095be3e52acf5ac
https://github.com/patriksimek/vm2/commit/d88105f99752305c5b8a77b63ddee3ec86912daf
https://github.com/patriksimek/vm2/releases/tag/3.9.18
https://github.com/patriksimek/vm2/security/advisories/GHSA-whpj-8f3w-67p5
Related Vulnerabilities
CVE-2018-20677 Vulnerability in maven package org.webjars.bower:bootstrap
CVE-2022-43416 Vulnerability in maven package org.jenkins-ci.plugins:katalon
CVE-2023-33831 Vulnerability in npm package @frangoteam/fuxa
CVE-2018-16487 Vulnerability in maven package org.webjars.bower:lodash
CVE-2021-21661 Vulnerability in maven package org.jenkins-ci.plugins:kubernetes-cli