Read the docs

Seroval: `fromJSON()` Promise thenable assimilation invokes plugin-produced callables (bypass of CVE-2026-59940)

Priority MEDIUM 49CWE-843Published · Updated

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

Exploitation None reported CISA SSVC · not in CISA KEV
EPSS 0.00345 28th percentileScored 2026-11-07
Fix Partial seroval (lxsmnsyc): 1.6.2seroval (npm): 1.6.2Red Hat: 1 without a fix

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

VendorProductAffected versionsFixed inStatusSource
lxsmnsycseroval0.12.0 to before 1.6.21.6.2Patch availableCNA
—seroval (npm)0.12.0 to before 1.6.21.6.2Patch availableGHSA-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

CPE names Threatist (inferred) · 1

Inferred from how NVD named this product before; not given by a source.

CPEVersionsRoleVendor
cpe:2.3:a:lxsmnsyc:seroval:*:*:*:*:*:*:*:*——lxsmnsyc
  • cpe:2.3:a:lxsmnsyc:seroval:*:*:*:*:*:*:*:* Versions — — ·lxsmnsyc

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 →

ProductStatusPlan or fix
Ansible Automation Orchestrator 2026AffectedNo fix yet

Timeline

  1. 2026-10-02 Threatist record created from CVE-2026-104846
  2. 2026-10-06 CISA SSVC decision points changed
  3. 2026-10-06 Alias added: GHSA-p6vx-979v-rg4c
  4. 2026-10-06 Fix available: npm/[email protected] · GHSA-p6vx-979v-rg4c
  5. 2026-10-06 CVSS score added · GHSA-p6vx-979v-rg4c
  6. 2026-10-06 Weakness changed · GHSA-p6vx-979v-rg4c
  7. 2026-10-06 4 new references · GHSA-p6vx-979v-rg4c
  8. 2026-10-09 Affected versions changed · Red Hat
  9. 2026-10-09 CVSS score added · Red Hat

References

  • 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
See all 12 →

Sources