CVE-2026-25881
Nyariv Sandboxjs ≤ 0.8.31
Raw vector
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:H/A:HSummary
CVE-2026-25881 is a critical-severity Prototype Pollution (CWE-1321) vulnerability in Nyariv Sandboxjs. Its CVSS base score is 9.0 (Critical).
Operationally, exploitation aligns with the MITRE ATT&CK technique Exploit Public-Facing Application (T1190); ranked at the 43th percentile by exploit likelihood (below the median); it is not currently listed in the CISA KEV catalog; a public proof-of-concept is referenced.
Deeper analysis AI-assisted summary
Synthesised by an AI model from the NVD description and linked references — a reading aid, not an authoritative source.
CVE-2026-25881 is a sandbox escape vulnerability in SandboxJS, a JavaScript sandboxing library. Versions prior to 0.8.31 allow sandboxed code to mutate host built-in prototypes, such as Map.prototype or Set.prototype, by exploiting a flaw in the isGlobal protection flag. This occurs when a global prototype reference is inserted into an array literal and retrieved, stripping the isGlobal taint and enabling direct prototype mutation from within the sandbox. The issue leads to persistent host-side prototype pollution and has a CVSS v3.1 score of 9.0 (AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:H/A:H), mapped to CWE-1321.
An attacker who can execute arbitrary JavaScript code within a SandboxJS sandbox—no privileges required—can exploit this to pollute host prototypes. This pollution persists outside the sandbox and may enable remote code execution in applications that process polluted properties in sensitive contexts, such as using execSync on an object with a tainted cmd property as a gadget.
The vulnerability is fixed in SandboxJS version 0.8.31. The GitHub security advisory (GHSA-ww7g-4gwx-m7wj) and the fixing commit (f369f8db26649f212a6a9a2e7a1624cb2f705b53) detail the patch, recommending immediate upgrades for affected deployments.
EU & UK References
- 🇪🇺 ENISA EUVD: EUVD-2026-6864
Vulnerability Data
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…
more
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.
- CWE(s)
Related Threats
MITRE ATT&CK Enterprise Techniques
CVEs Like This One
Affected Assets
Mitigating Controls
Control response
—
—
—
V15.3.6
Mitigating Controls (NIST CSF 2.0) AI
Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→CSF cross-walk (authority under review) — links open the control.
Secure SDLC practices directly require input validation and safe property assignment to prevent prototype pollution.
Mitigating Controls (ISO/IEC 27001:2022 Annex A) AI
Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→ISO cross-walk (authority under review) — links open the control.
Security testing in development catches prototype-pollution flaws before release.
Secure development lifecycle mandates input validation and object-handling controls that directly prevent prototype pollution.
Application security requirements explicitly call for safeguards against unsafe object attribute manipulation.
Secure architecture principles reduce the likelihood of prototype pollution through safe design patterns.
Secure coding standards directly prohibit unsafe prototype attribute assignment and require defensive checks.
Change-management processes ensure security fixes for prototype-pollution issues are tracked and deployed.