Quick answers
- Is This vulnerability exploited in the wild?
- No. Junglewise Threat Intelligence has no report of This vulnerability being exploited in the wild.
- How severe is This vulnerability?
- High severity, with a CVSS score of 7.1, published 17 September 2026.
- Which products and versions are affected?
- vm2 (npm) <= 3.11.7; Vm2 <= 3.11.7.
- Is there a fix for This vulnerability?
- Yes: fixed in 3.11.8. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
- How is This vulnerability attacked?
- It is attacked over the network, in a software library.
- Am I affected?
- Check whether you run vm2 (npm) or Vm2 at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.
How to fix
- Fixed in: 3.11.8
Technical details
The vulnerability exists in how vm2 enforces the allowAsync: false option. While the implementation blocks direct calls to Promise.prototype.then through a patched handler, it leaves Promise static methods (resolve, all, race, any, allSettled) exposed. These methods still accept attacker-supplied thenable objects and invoke their then methods via microtasks after VM.run() returns, bypassing the async restriction enforcement and executing outside configured timeouts.
Affected products
- vm2 <= 3.11.7
Timeline
- 2026-08-27: disclosed
- 2026-08-27: patched: GHSA-f8gf-w286-fmq2 (primary advisory)
- 2026-09-17: advisory
- 2026-10-05: other: This advisory (GHSA-9538-79j2-h62h) withdrawn as duplicate