CVE-2026-25881
Critical · 9.0CVSS
9.0
EPSS
0.7%
Published
Feb 9, 2026
CISA due date
—
The record
SandboxJS is a JavaScript sandboxing library. Prior to 0.8.31, a sandbox escape vulnerability allows sandboxed code to mutate host built-in prototypes by laundering the isGlobal protection flag through array literal intermediaries. When a global prototype reference (e.g., Map.prototype, Set.prototype) is placed into an array and retrieved, the isGlobal taint is stripped, permitting direct prototype mutation from within the sandbox. This results in persistent host-side prototype pollution and may enable RCE in applications that use polluted properties in sensitive sinks (example gadget: execSync(obj.cmd)). This vulnerability is fixed in 0.8.31.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| npm | @nyariv/sandboxjs | 0 | 0.8.31 |
Related vulnerabilities
- GHSA-ww7g-4gwx-m7wj @nyariv/sandboxjs has host prototype pollution from sandbox via array intermediary… Same vulnerability
- CVE-2026-43898 SandboxJS is a JavaScript sandboxing library. Also affects @nyariv/sandboxjs
- GHSA-g8f2-4f4f-5jqw SandboxJS has a sandbox escape via Function.caller leakage of internal call op Also affects @nyariv/sandboxjs
- CVE-2026-34208 SandboxJS is a JavaScript sandboxing library. Also affects @nyariv/sandboxjs
- CVE-2026-34217 SandboxJS is a JavaScript sandboxing library. Also affects @nyariv/sandboxjs
- CVE-2026-34211 SandboxJS is a JavaScript sandboxing library. Also affects @nyariv/sandboxjs
- GHSA-hg73-4w7g-q96w SandboxJS: Sandbox Escape via Prop Object Leak in New Handler Also affects @nyariv/sandboxjs
- GHSA-8pfc-jjgw-6g26 SandboxJS: Stack overflow DoS via deeply nested expressions in recursive descent parser Also affects @nyariv/sandboxjs