Security1 distinct publisher3 min readUpdated
A type confusion in isolated-vm's ExternalCopy turns a single ivm.Reference into host control-flow hijack. Fixes shipped in 6.2.0 and 7.0.1, under a GHSA number and no CVE.
The Watch · Security desk

Compiled by The WatchSomething wrong?How this is made
Endor Labs has disclosed a type confusion in isolated-vm's ExternalCopy class that lets code inside the sandbox corrupt memory in the host Node.js process, and the researcher credited with the find says he escalated it from a controlled crash to hijacking the host's control flow [7][8][9]. It is tracked as GHSA-864f-rcv7-6rh4 and has not been assigned a CVE identifier, which means anyone whose dependency triage starts at a CVE feed will not see it [1].
The affected range is every version before and including 7.0.0, with fixes in 6.2.0 and 7.0.1, released earlier this month according to the advisory [2]. Two consequences worth spelling out. A deployment pinned at 7.0.0, the newest release before the fix, is vulnerable [17]. And 6.2.0 sorts below 7.0.0 while being a fixed release, so the fix was backported to the 6.x line and a naive "less than 7.0.1 is bad" comparison will flag patched hosts and, worse, breed the habit of ignoring the check [16].
This matters because of where isolated-vm sits. It is the Node.js library for running untrusted JavaScript inside a V8 Isolate, letting multiple sandboxed environments run concurrently without sharing data [3]. The npm package recorded nearly a million downloads in the past week, and the GitHub project has more than 2,900 stars and 190 forks [4][5]. That is the plumbing under AI code execution, plugin runtimes, and multi-tenant eval endpoints, which is to say under a lot of products whose entire threat model is "the guest cannot reach the host."
The mechanism is unglamorous and instructive. Each isolate keeps its own heap and state, so objects cannot be handed directly from the main thread into a guest, and ExternalCopy exists to serialize values out of the host isolate and deserialize them into the guest [6]. The bug is in ExternalCopy's handling of the transferList option [8]. Endor Labs researcher Cristian-Alexandru Staicu says the starting point was nothing more than a single ivm.Reference, which he describes as the standard way hosts hand a sandbox any capability at all [9]. Maintainer Marcel Laverdet's advisory puts the floor at a reliable, controlled-address crash usable for denial of service by any guest that has been given an ivm.Reference, and the ceiling at control-flow hijack of the host process, meaning potential remote code execution [10][11]. In between sit host segfaults and a collapsed trust boundary [12]. Full exploit details have been withheld [13].
Staicu's own reading is the part to keep: the isolation primitive did not fail, V8's Isolate boundary held, and what broke was the C++ glue code marshalling values across it [14]. Sound building blocks do not confer soundness on the bindings wrapped around them.
What to watch. Whether a CVE is eventually issued and backfilled, because until it is, scanner coverage will be uneven and GHSA-only advisories travel badly through procurement and SBOM tooling [1]. Whether transitive dependents republish, since most teams do not install isolated-vm directly. And whether details of the withheld exploit surface once the patch has been public long enough to be diffed [13]. Guidance from the project is simply to update [15]; the operational work is proving that every isolate host you run actually did.
Follow any of these and your For You feed starts watching them — no settings page required.
Ranked by verification strength, evidence, and original report placement.
The vulnerability is tracked as GHSA-864f-rcv7-6rh4 and has yet to be assigned a CVE identifier.
The flaw impacts all versions of isolated-vm before and including 7.0.0, and has been patched in versions 6.2.0 and 7.0.1, released earlier this month.
Isolated-vm is a Node.js library for running untrusted JavaScript inside a V8 Isolate, an independent instance of the V8 engine, allowing multiple sandboxed JavaScript environments to run concurrently without sharing data or interfering with each other.
The isolated-vm npm package has seen nearly 1 million downloads over the past week.
The isolated-vm open-source project has more than 2,900 stars and 190 forks on GitHub.
Because each V8 Isolate has separate state and its own heap, JavaScript objects cannot be passed directly from the main Node.js thread into a worker isolate; isolated-vm exposes a class called ExternalCopy to serialize JavaScript objects out of the host isolate and deserialize them into the guest isolate.
Evidence-backed comparisons of source perspectives and observed adoption signals. Read the methodology
Which Builder, Operator, and Investor concerns the observed source mix emphasized—not a truth score.
Evidence, demonstrated adoption, hype gap, incentives, and confidence are assessed independently, each on its own current evidence. How these are measured.
Named researcher and maintainer advisory, single outlet
The technical account is specific and attributable: a named Endor Labs researcher, a named maintainer advisory with bounded minimum and maximum demonstrated impact, a concrete component and option (ExternalCopy transferList), a GHSA identifier and explicit affected and fixed versions. That is well above rumor-grade. It is capped by there being one publisher, no independent reproduction, and deliberately withheld exploit details, so the escalation to control-flow hijack cannot be externally checked from the supplied material.
Widely installed dependency, patches shipped
Adoption of the affected component is directly disclosed: nearly a million npm downloads in a week and a project with over 2,900 stars and 190 forks, plus fixed releases already published on two branches. What is not measured is uptake of the fixes or how many deployments remain on 7.0.0 or earlier, so this reflects exposure scale rather than remediation progress.
Slightly overstated toward RCE
The severity framing is close to the evidence but leans on the ceiling. Host control-flow hijack is described as demonstrated by the researchers and echoed by the maintainer, yet remote code execution is stated as potential, the exploit is unpublished, and no in-the-wild exploitation is reported. The reliably established outcome for most deployments is a controlled-address crash. Headline emphasis on escape-to-RCE therefore runs modestly ahead of what a defender can independently confirm, while the underlying exposure and patch facts are accurately reported.
Vendor research shared with trade outlet
The discovery is credited to Endor Labs, a commercial security vendor, and the technical write-up was shared with a security trade publication whose audience and traffic model reward high-severity sandbox-escape coverage. That combination creates a real pull toward maximal severity framing. It is offset by the coordinated pattern actually observed: patches shipped before disclosure, a maintainer advisory quoted with a conservative minimum impact, and exploit details withheld.
Coherent but single-sourced
Internal consistency is high and the two independent-ish voices inside the story (vendor researcher and project maintainer) agree on mechanism and bounded impact, which supports the core facts about versions, identifier and root cause. Confidence is held down by having exactly one publisher, no third-party reproduction, and no data on patch uptake or exploitation, so conclusions about real-world impact remain provisional.
product
The sandbox teams fled vm2 for now has its own guest-to-host escape1 distinct publisher
build
A default that is not a guard: tinycolor2's palette functions never return on analogous(-1)1 distinct publisher
build
The npm audit that works because it never installs the package1 distinct publisher
build
Eleven breaks in one sitting: where a non-developer's agent gateway install actually dies1 distinct publisher
Distinct publishers with included, body-backed reporting in this cluster.
1 article · August 20, 2026