{"id":"CVE-2026-92944","published":"2026-09-17T14:17:59.623","lastModified":"2026-09-19T03:17:18.580","description":"vm2 versions 3.10.2 through 3.11.6 contain a sandbox escape vulnerability on Node.js 26 where Promise.prototype.finally() bypasses vm2's wrapper protections due to a stale PromiseThenLookupChain protector in V8 14.6. Attackers can exploit this by creating an async function that returns a Promise with an attacker-controlled constructor Symbol.species, allowing them to reach the host Function constructor and process object for arbitrary code execution.","cvssScore":9.8,"cvssSeverity":"CRITICAL","cvssVector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","cwes":["CWE-693"],"vendors":[],"products":[],"references":[{"url":"https://github.com/patriksimek/vm2/commit/4635ddd85839461c8ad791990023a477efefe7bd","tags":[]},{"url":"https://github.com/patriksimek/vm2/commit/7b26e81087ec88c287d9a4812f969d412f32774e","tags":[]},{"url":"https://github.com/patriksimek/vm2/security/advisories/GHSA-27g9-p43v-cw3v","tags":[]},{"url":"https://www.vulncheck.com/advisories/vm2-3.10.2-through-3.11.6-sandbox-escape-via-promise-protector","tags":[]},{"url":"https://github.com/patriksimek/vm2/security/advisories/GHSA-27g9-p43v-cw3v","tags":[]}],"exploitRefs":[{"url":"https://github.com/patriksimek/vm2/commit/4635ddd85839461c8ad791990023a477efefe7bd","tags":[]},{"url":"https://github.com/patriksimek/vm2/commit/7b26e81087ec88c287d9a4812f969d412f32774e","tags":[]},{"url":"https://github.com/patriksimek/vm2/security/advisories/GHSA-27g9-p43v-cw3v","tags":[]},{"url":"https://github.com/patriksimek/vm2/security/advisories/GHSA-27g9-p43v-cw3v","tags":[]}],"hasPoc":true,"ai":{"summary":"This vulnerability allows attackers to bypass sandbox protections in vm2 versions 3.10.2 through 3.11.6 by exploiting the Promise.prototype.finally() method, leading to arbitrary code execution.","exploitability":"Exploitation requires the attacker to control the constructor Symbol.species within an async function, making it moderately difficult but feasible under certain conditions.","blast_radius":"If exploited, this could result in full system compromise, as it allows arbitrary code execution within the Node.js environment.","remediation":"Upgrade to vm2 version 3.11.7 or later.","detection":"No reliable host or network indicator is derivable from the published description.","tags":["rce","vm2","nodejs","promise","sandbox"],"model":"qwen2.5:7b-instruct","analyzedAt":"2026-09-27T09:03:06.369Z"}}