# CVE-2026-22709

## Summary

- **CVE ID:** CVE-2026-22709
- **Severity:** CRITICAL
- **CVSS Score:** 9.8 (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H)
- **CWE:** CWE-94, CWE-913, CWE-693
- **Published:** Jan 26, 2026
- **Last Modified:** Mar 12, 2026

## Description

vm2 is an open source vm/sandbox for Node.js. In vm2 prior to version 3.10.2, `Promise.prototype.then` `Promise.prototype.catch` callback sanitization can be bypassed. This allows attackers to escape the sandbox and run arbitrary code. In lib/setup-sandbox.js, the callback function of `localPromise.prototype.then` is sanitized, but `globalPromise.prototype.then` is not sanitized. The return value of async functions is `globalPromise` object. Version 3.10.2 fixes the issue.

## Affected Products

- patriksimek — vm2 (< 3.10.2)

## References

- [CNA](https://github.com/patriksimek/vm2/security/advisories/GHSA-99p7-6v5w-7xg8)
- [CNA](https://github.com/patriksimek/vm2/commit/4b009c2d4b1131c01810c1205e641d614c322a29)
- [CNA](https://github.com/patriksimek/vm2/releases/tag/v3.10.2)

## Exploitation Prediction (EPSS)

- **EPSS Score:** 1.24%
- **EPSS Percentile:** 67.5

---
_Exported from OnDuty AI Vulnerability Intelligence on 2026-09-11._