CVE-2026-104846 · GHSA-p6vx-979v-rg4c
Seroval: `fromJSON()` Promise thenable assimilation invokes plugin-produced callables (bypass of GHSA-mv8w-475r-vwqw)
- Risk score
- 74/100
- CVSS
- 9.8 v3.1
- Exploit chance (30 days)
- 0.3%
- Published
- 2 Oct 2026
Open in the live forecast Today's forecast
What to know
- What it is
- Seroval facilitates JS value stringification, including complex structures beyond JSON.stringify capabilities. From 0.12.0 until 1.6.2, fromJSON deserialization of a fulfilled Promise control node can pass a plugin-produced callable-bearing thenable to a native Promise resolver. ECMAScript thenable assimilation then i…
- Affected
- seroval (npm) >= 0.12.0, <= 1.6.0
- Fix
- Upgrade seroval to 1.6.2 or later.
- Exploitation
- No known exploitation
Story map
At a glance
seroval: Amber, patch this week. Seroval facilitates JS value stringification, including complex structures beyond JSON.stringify capabilities. From 0.12.0 until 1.6.2, fromJSON deserialization of a fulfilled Promise control node can pass a plugin-produced callable-bearing thenable to a native Promise resolver. ECMAScript thenable assimilation then i…
The flaws
- CVE-2026-104846: Seroval: `fromJSON()` Promise thenable assimilation invokes plugin-produced callables (bypass of GHSA-mv8w-475r-vwqw) (CVSS 9.8 · EPSS 0%)
- CVE-2026-104845: Seroval: Memory exhaustion via unchecked TypedArray length in JSON deserialization (CVSS 7.5 · EPSS 0%)
The fix
Upgrade seroval: 1.6.2 · 1.6.3 or later on your release line
Who is exposed: seroval (npm) >= 0.12.0, <= 1.6.0
Where it stands
- No known exploitation
Connects to
- Same weakness: CWE-843 (CWE-843). 61 other warnings in 30 days
Why it is Amber
- CVSS 9.8 critical
- Remotely exploitable without logging in
- On your watchlist: npm
Affected packages
| Package | Ecosystem | Vulnerable | Fixed in |
|---|---|---|---|
| seroval | npm | >= 0.12.0, <= 1.6.0 | 1.6.2 |
References
- https://github.com/advisories/GHSA-p6vx-979v-rg4c
- https://github.com/lxsmnsyc/seroval/security/advisories/GHSA-p6vx-979v-rg4c
- https://nvd.nist.gov/vuln/detail/CVE-2026-104846
- https://github.com/lxsmnsyc/seroval/commit/f1ffcc96d259f9b5b3d71feb262b58240c90e7b7
- https://github.com/advisories/GHSA-p6vx-979v-rg4c
Original description
Seroval facilitates JS value stringification, including complex structures beyond JSON.stringify capabilities. From 0.12.0 until 1.6.2, fromJSON deserialization of a fulfilled Promise control node can pass a plugin-produced callable-bearing thenable to a native Promise resolver. ECMAScript thenable assimilation then invokes the callable unexpectedly, allowing attacker-controlled JSON to trigger code in applications using plugin-capable Seroval releases. This path bypasses the Promise resolver type-confusion remediation in version 1.5.3 for CVE-2026-59940 because the unexpected invocation occurs through native Promise settlement after the referenced value is deserialized. This issue is fixed in version 1.6.2.
Last activity 2 Oct 2026. Patch Forecast updates every hour.