Quick answers
- Is CVE-2026-25881 exploited in the wild?
- No. Junglewise Threat Intelligence has no report of CVE-2026-25881 being exploited in the wild.
- How severe is CVE-2026-25881?
- Low severity, with a CVSS score of 3.1, published 10 February 2026.
- Which products and versions are affected?
- @nyariv/sandboxjs (npm) SEMVER:introduced=0,fixed=0.8.31; Nyariv Sandboxjs <= 0.8.30.
- Is there a fix for CVE-2026-25881?
- Yes. @nyariv/sandboxjs (npm): upgrade to 0.8.31 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
- How is CVE-2026-25881 attacked?
- It is attacked over the network, in a software library.
- Am I affected by CVE-2026-25881?
- Check whether you run @nyariv/sandboxjs (npm) or Nyariv Sandboxjs at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.
How to fix
- @nyariv/sandboxjs (npm): upgrade to 0.8.31 or later
npm install @nyariv/sandboxjs@0.8.31
Technical details
The vulnerability is a sandbox escape caused by prototype pollution via array intermediaries (CWE-1321). The sandbox uses an isGlobal taint flag to prevent modification of global objects and prototypes; however, this flag is lost when values are extracted from array literals via the valueOrProp() function in src/executor.ts. An attacker can place a global prototype reference (e.g., Map.prototype) into an array, retrieve it, and modify it directly, bypassing all protection checks in src/utils.ts. The attack vector is network-based (untrusted code execution within the sandbox), with no authentication required. An attacker can persistently pollute host prototypes and achieve RCE if the application uses polluted properties in sensitive sinks like child_process.execSync(). The vulnerability affects all versions up to 0.8.30 and is fixed in 0.8.31.
Affected products
- nyariv SandboxJS <= 0.8.30
Identifiers
- CVE-2026-25881
- GHSA-ww7g-4gwx-m7wj
Timeline
- 2026-02-08: disclosed: Advisory published on GitHub
- 2026-02-10: patched: Version 0.8.31 released with fix
- 2026-02-10: advisory: GHSA-ww7g-4gwx-m7wj and CVE-2026-25881 published