vm2 vulnerability

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.

Published 17 Sep 2026Updated 19 Sep 20265 sources
CVSS 9.3

Record history

Record created from the first normalized source observation.
Metadata and source references refreshed.