CVE-2026-25586 SandboxJS has a Sandbox Escape via Prototype Whitelist Bypass and Host Prototype Pollution
Attackers can escape the SandboxJS sandbox and pollute host prototypes by bypassing whitelist enforcement, leading to code execution.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2026-25586?
CVE-2026-25586 is a critical code injection vulnerability in nyariv SandboxJS, published on 6 Feb 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
SandboxJS is a JavaScript sandboxing library. Prior to 0.8.29, a sandbox escape is possible by shadowing hasOwnProperty on a sandbox object, which disables prototype whitelist enforcement in the property-access path. This permits direct access to __proto__ and other blocked prototype properties, enabling host Object.prototype pollution and persistent cross-sandbox impact. This vulnerability is fixed in 0.8.29.
Weakness: CWE-74
Which versions are affected by CVE-2026-25586?
2 open source packages ship an affected version, including @nyariv/sandboxjs. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
@nyariv/sandboxjs npm | All versions | 0.8.29 |
@nyariv/sandboxjs npm | All versions | 0.8.29 |
Products include Nyariv Sandboxjs.
How do I fix CVE-2026-25586?
Upgrade @nyariv/sandboxjs to 0.8.29 or later.
Upgrade, and never evaluate templates, expressions or code built from user input. More about Code injection.
Is CVE-2026-25586 being exploited?
It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-25586 exists.
Other vulnerabilities in nyariv SandboxJS
Sources
Also known as GHSA-jjpw-65fv-8g48.