# CVE-2026-92954: vm2 host Promise rejection denial of service

Source: https://junglewise.ai/threats/cve-2026-92954-vm2-host-promise-rejection-denial-of-service  
Publisher: Junglewise Threat Intelligence, https://junglewise.ai/threats  
Published: 2026-09-17. Updated: 2026-09-26  
License: CC BY 4.0 with a link back

CVE-2026-92954 · Severity: high · CVSS 8.6 · Published 2026-09-17

vm2 is a sandbox library that isolates untrusted JavaScript code running in Node.js. Attackers who execute code within the sandbox can trigger a denial of service by calling host functions that return rejected Promises and ignoring the result, causing the entire host process to terminate. In multi-tenant or service environments, this allows a small malicious script to crash the worker, disrupting service availability.

Technologies: [vm2 (npm)](https://junglewise.ai/threats/technologies/vm2). Vendors: [npm](https://junglewise.ai/threats/vendors/npm).

## Quick answers

**Is CVE-2026-92954 exploited in the wild?** No. Junglewise Threat Intelligence has no report of CVE-2026-92954 being exploited in the wild.

**How severe is CVE-2026-92954?** High severity, with a CVSS score of 8.6, published 17 September 2026.

**Which products and versions are affected?** vm2 (npm) >= 3.10.0, <= 3.11.7, SEMVER:introduced=3.10.0,fixed=3.11.8.

**Is there a fix for CVE-2026-92954?** Yes. vm2 (npm): upgrade to 3.11.8 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.

**How is CVE-2026-92954 attacked?** It is attacked over the network, in a software library.

**Am I affected by CVE-2026-92954?** Check whether you run vm2 (npm) 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

- vm2 (npm): upgrade to 3.11.8 or later

  ```sh
  npm install vm2@3.11.8
  ```


## Technical details

The vulnerability is a Promise rejection handling bypass in vm2's sandbox bridge. When untrusted code calls a host function that returns a rejected Promise (such as events.once() or any embedder-exposed Promise-returning API) and does not attach a .catch() or .then() handler, the host-side Promise remains unhandled. While vm2 wraps sandbox-created Promises with rejection handlers, host Promises are only instrumented when sandbox code explicitly calls .then/.catch/.finally on them. If the Promise is ignored, Node.js's default unhandled-rejection behavior (process termination) occurs, crashing the host. This affects versions 3.10.0 through 3.11.7; the fix in 3.11.8 adds host-side rejection handlers at the bridge boundary for all returned Promises.

## Affected products

- patriksimek vm2 3.10.0 through 3.11.7

## Identifiers

- CVE-2026-92954
- GHSA-gjq8-xm47-88rc

## Timeline

- 2026-08-27: disclosed
- 2026-09-17: advisory
- 2026-09-17: patched: Fixed in version 3.11.8

## References

- [https://github.com/patriksimek/vm2/security/advisories/GHSA-gjq8-xm47-88rc](https://github.com/patriksimek/vm2/security/advisories/GHSA-gjq8-xm47-88rc)
- [https://www.vulncheck.com/advisories/vm2-3.10.0-through-3.11.5-denial-of-service-via-host-promise](https://www.vulncheck.com/advisories/vm2-3.10.0-through-3.11.5-denial-of-service-via-host-promise)

## Related threats

- [vm2 NodeVM path bypass in custom resolution](https://junglewise.ai/threats/duplicate-advisory-vm2-nodevm-custom-resolution-bypasses-external-path-5d3a7272)
- [vm2 NodeVM zlib buffer pool information disclosure](https://junglewise.ai/threats/duplicate-advisory-vm2-nodevm-zlib-buffers-expose-pooled-host-memory-6007c734)
- [vm2 host Promise rejection denial of service in construct trap](https://junglewise.ai/threats/duplicate-advisory-vm2-host-promise-rejection-from-an-exposed-f7aba6ba)
- [vm2 sandbox escape via Buffer backing-store ownership bypass](https://junglewise.ai/threats/cve-2026-100723-vm2-before-3-12-2-does-not-apply-its-buffer-backing-store)
- [vm2 unhandled Promise rejection in construct trap](https://junglewise.ai/threats/cve-2026-100722-vm2-before-3-12-2-does-not-apply-host-side-promise-rejection)
