Seroval: `fromJSON()` Promise thenable assimilation invokes plugin-produced callables (bypass of CVE-2026-59940)
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Impact type
- Code execution
- Confidentiality · integrity · availability
- High · High · High
- Fix status
- Partial Red Hat: 1 without a fix
Attack profile from CVSS 3.1 · CNA. Fix status from CNA, GitHub and Red Hat. Impact type from CWE-843 and the CVSS impact.
Summary
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.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- Yes
- Technical impact
- Total
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| lxsmnsyc | seroval | 0.12.0 to before 1.6.2 | 1.6.2 | Patch available | CNA |
| — | seroval (npm) | 0.12.0 to before 1.6.2 | 1.6.2 | Patch available | GHSA-p6vx-979v-rg4c |
- seroval Vendorlxsmnsyc Affected 0.12.0 to before 1.6.2 Fixed in 1.6.2 Patch available CNA
- seroval (npm) Vendor— Affected 0.12.0 to before 1.6.2 Fixed in 1.6.2 Patch available GHSA-p6vx-979v-rg4c
Remediation
- Fix · CNA seroval (lxsmnsyc) Fixed in 1.6.2
- Fix · GHSA-p6vx-979v-rg4c seroval (npm) Fixed in 1.6.2 Advisory →
Vendor assessments
Red Hat
Red Hat rating: Important. Red Hat's page for this CVE →
| Product | Status | Plan or fix |
|---|---|---|
| Ansible Automation Orchestrator 2026 | Affected | No fix yet |
Timeline
- 2026-10-02 Threatist record created from CVE-2026-104846
- 2026-10-06 CISA SSVC decision points changed
- 2026-10-06 Alias added: GHSA-p6vx-979v-rg4c
- 2026-10-06 Fix available: npm/[email protected] · GHSA-p6vx-979v-rg4c
- 2026-10-06 CVSS score added · GHSA-p6vx-979v-rg4c
- 2026-10-06 Weakness changed · GHSA-p6vx-979v-rg4c
- 2026-10-06 4 new references · GHSA-p6vx-979v-rg4c
- 2026-10-09 Affected versions changed · Red Hat
- 2026-10-09 CVSS score added · Red Hat
References
More lxsmnsyc vulnerabilities
- TI-2026-42747 Seroval: `seroval.fromJSON()` Promise resolver type confusion invokes attacker-controlled methods during deserialization CVSS 3.1CRITICAL 9.8
- TI-2026-19109 seroval Affected by Prototype Pollution via JSON Deserialization CVSS 3.1CRITICAL 9.8
- TI-2026-19298 seroval affected by Denial of Service via RegExp serialization CVSS 3.1HIGH 7.5
- TI-2026-80920 Denial of service in Seroval fromJSON via unvalidated array length CVSS 3.1HIGH 7.5
- TI-2026-80917 Seroval fromJSON deserializer hangs on crafted sequence, causing DoS CVSS 3.1HIGH 7.5
- TI-2026-66131 Seroval: Memory exhaustion via unchecked TypedArray length in JSON deserialization CVSS 3.1HIGH 7.5
Sources
- CVE-2026-104846 · CVE Program
- CVE-2026-104846 · NVD
- FIRST EPSS
- GHSA-p6vx-979v-rg4c · GitHub Advisory Database · CC BY 4.0
- CVE-2026-104846 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences