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.
Remediation
References
https://gist.github.com/seongil-wi/2a44e082001b959bfe304b62121fb76d
https://github.com/patriksimek/vm2/commit/d534e5785f38307b70d3aac1945260a261a94d50
https://github.com/patriksimek/vm2/issues/515
https://github.com/patriksimek/vm2/security/advisories/GHSA-7jxr-cg7f-gpgv
Related Vulnerabilities
CVE-2022-42743 Vulnerability in npm package deep-parse-json
CVE-2020-36180 Vulnerability in maven package com.fasterxml.jackson.core:jackson-databind
CVE-2023-27162 Vulnerability in maven package org.openapitools:openapi-generator-project
CVE-2012-0391 Vulnerability in maven package com.opensymphony:xwork-core
CVE-2023-41578 Vulnerability in maven package org.jeecgframework.boot:jeecg-boot-parent