Critical Type Confusion in isolated-vm (GHSA-864f-rcv7-6rh4) Enables Sandbox Escape and RCE on Host

Critical Type Confusion in isolated-vm (GHSA-864f-rcv7-6rh4) (TL-2026-2121), also tracked as GHSA-864f-rcv7-6rh4, is a critical-severity software vulnerability, first published 2026-08-23. It has no confirmed attribution, affects laverdet (isolated-vm project) isolated-vm, maps to 10 MITRE ATT&CK / ATLAS techniques (AML.T0051, T1059.007, T1106), and is covered by 9 detection rules and 17 indicators of compromise.

Key facts for TL-2026-2121

Threat ID
TL-2026-2121
Also known as
GHSA-864f-rcv7-6rh4
Severity
CRITICAL
Status
ACTIVE
Category
VULNERABILITY
First published
2026-08-23
Last reviewed
2026-08-23
Attribution confidence
LOW
Motivation
UNKNOWN
Target sectors
technology, software development, artificial intelligence
Detection rules
9
Indicators of compromise
17

A time-of-check/time-of-use (TOCTOU) type confusion in isolated-vm's ExternalCopy handling of the transferList option lets JavaScript running inside a guest V8 isolate corrupt host process memory, escalating from a controlled crash to a demonstrated control-flow hijack of the host. isolated-vm is downloaded nearly 1M times/week and underpins the code-execution sandbox in multiple AI-agent and low-code automation platforms; fixes shipped in 6.2.0 and 7.0.1.

How Critical Type Confusion in isolated-vm (GHSA-864f-rcv7-6rh4) works

isolated-vm is a widely used Node.js native addon that runs untrusted JavaScript inside separate V8 isolates and lets a host application exchange data with that guest code via ExternalCopy and ivm.Reference objects. Security researcher Cristian-Alexandru Staicu of Endor Labs found that ExternalCopy's constructor walks the caller-supplied transferList array twice: once to validate that every element is an ArrayBuffer, and a second time to actually transfer the elements, trusting the earlier validation without re-checking it. Because array element access can be intercepted with a JavaScript getter, an attacker who controls a single transferList entry can register a stateful getter that returns a genuine ArrayBuffer on the first (validating) read and an attacker-chosen value, such as the integer 0x41414141, on the second (transferring) read. The unchecked second read then performs an unsafe As<ArrayBuffer>() cast on that value inside ExternalCopyArrayBuffer::Transfer, producing a type confusion that dereferences an attacker-derived pointer, calling IsDetachable() and GetBackingStore() on corrupted memory and crashing the host at a fully attacker-controlled address (SIGSEGV at 0x4141414100000047 in the published PoC).

While the ExternalCopy constructor itself is host-only API surface, Endor Labs showed that a guest with nothing more than a single ivm.Reference -- the standard mechanism a host uses to expose any capability at all to a sandboxed isolate -- can reach ExternalCopy indirectly (e.g. via ref.getSync('key', {externalCopy:true}).constructor) and trigger the bug from inside the sandbox. Beyond the minimum demonstrated impact of a reliable, attacker-controlled-address crash (denial of service), Endor Labs privately escalated the primitive to a full control-flow hijack: recovering the host's ASLR base from pointers leaked through buffer operations, forging fake control-block/vtable structures in sprayed heap memory, and redirecting an indirect call read from that forged vtable into a chosen libc function -- i.e. weaponizing the type confusion into arbitrary native-code execution in the host process, outside the sandbox. The full RCE exploit chain was withheld from publication and shared privately with the maintainer. Staicu emphasized that the V8 Isolate boundary itself held -- the failure is in the memory-unsafe C++ glue code isolated-vm uses to marshal values across that boundary -- and that no transferList configuration exists that makes the flaw safe; only upgrading remediates it.

Every isolated-vm release through and including 7.0.0 is affected. The maintainer, Marcel Laverdet, shipped fixes in 6.2.0 (6.x line) and 7.0.1 (7.x line) that wrap ExternalCopy::Copy in a v8::Isolate::DisallowJavascriptExecutionScope, which prevents any user JavaScript -- including getters, proxies, and interceptors -- from running during the copy operation, removing the precondition the type confusion depends on. As of publication no CVE identifier had been assigned; the flaw is tracked solely as GHSA-864f-rcv7-6rh4, and it does not appear in the CISA Known Exploited Vulnerabilities catalog. No public exploit code has been released -- Endor Labs withheld full exploit details to prevent misuse -- and no in-the-wild exploitation has been reported.

Because isolated-vm is frequently the sole isolation boundary around a "run this untrusted/LLM-generated code" feature, the flaw has outsized blast radius: Endor Labs and downstream reporting identified n8n, Mastra, Activepieces, Sim.ai, Budibase, Directus, and Rocket.Chat as open-source projects that embed isolated-vm (Budibase and Directus both migrated to it from the deprecated vm2 sandbox), alongside production users including Fly.io, Algolia, TripAdvisor, and Screeps. ComplianceHub.Wiki's analysis of the disclosure lays out the concrete agentic-AI attack chain this creates: untrusted external content (a support ticket, a fetched web page, an uploaded PDF) reaches an LLM's context window, a prompt injection in that content causes the model to emit crafted JavaScript, the platform's sandbox executes that JavaScript, and the type confusion escalates it to host RCE -- because for platforms like n8n, Mastra, Sim.ai, and Activepieces, "running code that a model, or a user, generated" is the product's core function. The same analysis notes that the compromised host process typically holds the platform's own service credentials -- API keys, database connections, OAuth tokens, and cloud IAM roles the agent needs to do its job -- turning a sandbox escape into a credential-blast-radius incident that extends well beyond the code-execution boundary, and ties the exposure to ISO/IEC 42001 (A.6.2.4, A.6.2.6, A.5.2), SOC 2 (CC6.1, CC6.6, CC7.1), PCI DSS 4.0 (6.3.3, 6.2.4), and EU AI Act Article 15 control obligations for organizations running AI agent platforms on isolated-vm.

MITRE ATT&CK / ATLAS techniques used in TL-2026-2121

execution

AML.T0051 LLM Prompt Injection

Execution

T1059.007 JavaScript; T1106 Native API

Stealth

T1211 Exploitation for Stealth

Impact

T1499.004 Application or System Exploitation

Credential Access

T1552 Unsecured Credentials

Resource Development

T1587.004 Exploits; T1588.005 Exploits; T1588.006 Vulnerabilities

Privilege Escalation

T1611 Escape to Host

Affected products and versions in Critical Type Confusion in isolated-vm (GHSA-864f-rcv7-6rh4)

  • laverdet (isolated-vm project) — isolated-vm
    Vulnerable versions: all versions through and including 7.0.0
    Fixed in: 6.2.0; 7.0.1

Remediation for Critical Type Confusion in isolated-vm (GHSA-864f-rcv7-6rh4)

Patches

  • isolated-vm 6.2.0
  • isolated-vm 7.0.1

Immediate actions

  • Upgrade isolated-vm to 7.0.1 on the 7.x line, or 6.2.0 on the 6.x line, immediately
  • Audit every application and platform in the environment for a vulnerable isolated-vm dependency, including transitive/vendored copies inside tools like n8n, Mastra, Activepieces, Sim.ai, Budibase, Directus, and Rocket.Chat
  • Treat isolated-vm as a security-critical, tracked SBOM dependency rather than an ordinary transitive package

Workarounds

  • No transferList configuration mitigates the flaw per Endor Labs -- upgrading is the only effective fix
  • Pending upgrade, minimize or avoid exposing ivm.Reference objects to untrusted guest code to reduce the attack surface reaching ExternalCopy

Longer-term hardening

  • Do not rely on isolated-vm, or any single JS-level sandbox, as the sole isolation control for untrusted or LLM-generated code execution in agentic AI pipelines
  • Layer defense-in-depth around JS sandboxing libraries: OS-level sandboxing (seccomp, gVisor), separate VM/container/process isolation, and least-privilege ivm.Reference exposure
  • Subscribe to GHSA/npm security advisories for isolated-vm and any code-execution sandbox embedded in production AI agent tooling
  • Scope the service credentials (API keys, database connections, OAuth tokens, cloud IAM roles) available to the host process running the sandbox to least privilege, so a sandbox escape does not yield the full credential blast radius the agent platform holds
  • Treat any content that reaches an LLM's context window -- support tickets, fetched web pages, uploaded documents -- as untrusted input that can trigger prompt injection leading to malicious sandboxed code, and apply prompt-injection detection/filtering upstream of code-generation and code-execution steps

Weaknesses (CWE) in Critical Type Confusion in isolated-vm (GHSA-864f-rcv7-6rh4)

CWE-843, CWE-367

Timeline of Critical Type Confusion in isolated-vm (GHSA-864f-rcv7-6rh4)

  • GitHub Security Advisory GHSA-864f-rcv7-6rh4 is published for isolated-vm, documenting the type confusion in ExternalCopy and confirming patched releases 6.2.0 and 7.0.1.
  • Endor Labs escalates a controlled-address crash proof-of-concept into a full guest-to-host control-flow hijack demonstration, withholding complete exploit details from publication to prevent misuse.
  • Endor Labs researcher Cristian-Alexandru Staicu publicly discloses the vulnerability via the Endor Labs research blog, detailing the ExternalCopy transferList TOCTOU flaw and the guest-to-host escape path.
  • ComplianceHub.Wiki publishes an analysis tying the flaw to compliance implications under ISO 42001, SOC 2, PCI DSS 4.0, and EU AI Act Article 15 for organizations running AI agent platforms built on isolated-vm.
  • The Hacker News, DevOps.com, and GuardianMSSP publish coverage of the disclosure, highlighting isolated-vm's roughly 1 million weekly npm downloads and its use inside AI-agent frameworks including n8n, Mastra, Activepieces, and Sim.ai.
  • As of the latest reporting, no CVE identifier has been assigned to GHSA-864f-rcv7-6rh4 and the flaw does not appear in the CISA Known Exploited Vulnerabilities catalog.
  • SecurityWeek publishes coverage of the vulnerability -- the source article that triggered this threat record.

Sources cited for Critical Type Confusion in isolated-vm (GHSA-864f-rcv7-6rh4)

Threats related to Critical Type Confusion in isolated-vm (GHSA-864f-rcv7-6rh4)

Detection coverage for TL-2026-2121

As of 2026-08-23, Threadlinqs Intelligence publishes 9 detection rule(s) for TL-2026-2121 across Splunk SPL, Microsoft KQL and Sigma, covering 17 indicator(s) of compromise. The whole corpus is readable without an account; a free account unlocks full detection query text in Splunk SPL, Microsoft KQL and Sigma; paid tiers add raw indicator values, correlation and the MCP server. Threadlinqs MCP server · View plans.

Threadlinqs Intelligence — Real-Time Threat Detection Platform

[ 0 threats ] [ 0 det ] [ CRIT: 0 ] [ HIGH: 0 ]
// threat_feed
$ sort --newest
Showing all threats

Latest Threats