CVE-2026-93603 vm2 before 3.12.1 Sandbox Escape RCE via Non-Strict Host Function

Critical 10.0 Published Updated

Attackers can escape the vm2 sandbox and execute arbitrary code on the host if the application exposes non-strict host functions to untrusted scripts.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Over the internet
Victim action needed
Not needed
Fix
None listed

What is CVE-2026-93603?

CVE-2026-93603 is a critical code injection vulnerability in patriksimek vm2, published on 18 Sep 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official description

vm2 through 3.12.0 (fixed in 3.12.1) does not correctly handle a nullish `this` receiver in the apply trap of its bridge (lib/bridge.js): when sandboxed code calls a host-provided non-strict (sloppy-mode) function without a receiver — e.g. `fn()`, a detached method, `fn.call()`, `fn.apply(undefined)`, `Reflect.apply(fn, undefined, [])`, or `fn.bind()()` — the undefined receiver is passed straight through to the host call, and V8 substitutes the host realm's global object for `this`. vm2 then wraps and returns that object to the sandbox, giving sandboxed script a live proxy of the host global. This allows a complete sandbox escape: untrusted script can reach `process` and execute arbitrary code/commands on the host (for example via `process.getBuiltinModule('child_process').execSync`). Exploitation requires that the embedding application expose at least one non-strict host function to the sandbox; strict-mode and ES module host functions are not affected.

Weakness: CWE-94

Which versions are affected by CVE-2026-93603?

How do I fix CVE-2026-93603?

No fix has been published for CVE-2026-93603 yet. Limit exposure of the affected software until one is available.

Upgrade, and never evaluate templates, expressions or code built from user input. More about Code injection.

Is CVE-2026-93603 being exploited?

It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-93603 exists.

Sources

Also known as GHSA-2mqq-5j76-f3c6, GHSA-j89j-5m6r-cr2q.

Is CVE-2026-93603 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free