Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessSend crafted seroval payload to deserializing endpoint
-
DeliveryService calls fromJSON/fromCrossJSON on untrusted input
-
ExploitMalformed sequence done index builds non-terminating iterator
-
ExecutionApplication consumes iterator to completion
-
ImpactEvent loop blocked and service unavailable
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Loop termination conditions
MITRE ATT&CK
1 technique across 1 tactic: Impact The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitable only when the application passes attacker-controlled input to seroval's fromJSON or fromCrossJSON deserialization functions; the sequence/iterator variant additionally requires the application to consume the reconstructed iterator to completion, at which point a sequence node whose 'done' (or 'throw') index falls outside the element list produces an iterator that never terminates (CWE-835), while the related array variant lets a node-supplied length block the decoding thread directly. Limiting factor: merely importing or using the library on trusted data is not vulnerable - only services deserializing untrusted seroval payloads are affected. Once such an endpoint is reached, no authentication and no user interaction are required (PR:N/UI:N per the provided CVSS vector). The only complete fix per the vendor is upgrading to 1.6.8; the advisory explicitly states there is no workaround. |
| Impact | Signals are broadly consistent and point to a genuine but non-emergency availability risk. The CVSS 3.1 vector (AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H, base 7.5 High) describes an unauthenticated, low-complexity, network-reachable denial of service with availability-only impact - no confidentiality or integrity loss, which caps the ceiling. EPSS is low at 0.45% (39th percentile), the CVE is NOT listed in CISA KEV, and there is no public exploit identified at time of analysis, so there is no evidence of active or widespread exploitation. The vuln.today decision label is 'this_week', which aligns with a real-but-not-critical DoS. The key tempering factor the raw CVSS does not capture is reachability: PR:N/AC:L is only meaningful once an application actually passes untrusted input to seroval's fromJSON/fromCrossJSON, and the iterator variant additionally requires the app to consume the resulting iterator to completion - so exposure depends on application design rather than mere presence of the library. Net: a legitimate patch-this-week item for services that deserialize untrusted seroval payloads, not a drop-everything emergency; the low EPSS and absence of KEV/exploit support that prioritization. |
| Exploit ScenarioDerived | An attacker sends a crafted seroval JSON payload to an unauthenticated endpoint of a service that deserializes untrusted input with fromJSON or fromCrossJSON. The malformed sequence node carries an out-of-range 'done' index, so when application code iterates the reconstructed value to completion the iterator never terminates, pinning the event loop or exhausting memory; the related array-length variant blocks the thread directly during decode. No public standalone exploit is identified, though the vendor's patch ships a regression test demonstrating the malformed-index trigger. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 28, 2026
Deserialization in Seroval prior to 1.6.8 accepts sequence nodes whose done and throw indices are unvalidated, so a crafted payload yields an iterator that never terminates; a related array-node flaw lets a node-supplied length drive the decoding loop. Affected are any services that pass untrusted input to fromJSON or fromCrossJSON, which a remote unauthenticated attacker can drive to block the event loop, exhaust memory, or take the service down (CVSS 7.5, availability-only). A public advisory, commit and test case are available; no public exploit code is confirmed and EPSS is low at 0.45% (39th percentile), with no CISA KEV listing.
RemediationAI
Vendor-released patch: upgrade to seroval 1.6.8, which is the only complete fix - the advisory states explicitly that there is no workaround (release: https://github.com/lxsmnsyc/seroval/releases/tag/seroval@1.6.8, fix commit: https://github.com/lxsmnsyc/seroval/commit/e176f9267e59ddd6c9de89cc9fe85c5b37a5b728). After upgrading, fromJSON and fromCrossJSON throw SerovalMalformedNodeError for malformed sequence indices or non-array element lists, so ensure callers handle that exception rather than surfacing it as an unhandled error. Until the upgrade is deployed, treat every endpoint that feeds attacker-controlled data into seroval as exposed: do not pass untrusted input to fromJSON/fromCrossJSON, and if such a path cannot be removed, run the deserialization in an isolated worker or process with a timeout and memory cap so a non-terminating decode or iterator cannot stall the main event loop - accepting the added latency and operational overhead of that split. Given the low EPSS score, no KEV listing and a this_week priority label, schedule the upgrade in the current patch cycle rather than as an emergency change.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in npm
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Seroval serializes JavaScript values beyond what JSON.stringify supports, including iterables, and reconstructs them via fromJSON and fromCrossJSON. The deserializer builds internal node objects whose fields come straight from the wire; for a sequence node, the 's' (throw) and 'l' (done) indices determine when the reconstructed iterator terminates, and for an array node the element list length drives the decode loop. Both were trusted without type or range checks (CWE-835, Infinite Loop, plus CWE-1284 improper validation of specified quantity in GHSA-97r2-qh9m-474h). The upstream fix adds an isSequenceIndex check requiring both indices to be integers between -1 and the last element index and validates that element lists are arrays, throwing SerovalMalformedNodeError on malformed input; the accompanying tests confirm rejection of strings, null, floats, out-of-range and NaN values for both functions. The array-length variant is tracked separately as GHSA-wp97-x4hv-qvhp.
Know when Seroval gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Unauthenticated, low-complexity network-reachable DoS once an app deserializes untrusted input; availability-only impact, so A:H with C:N and I:N.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
2DescriptionCVE.org
Seroval facilitates JavaScript value stringification, including complex structures beyond JSON.stringify capabilities. Prior to 1.6.8, fromJSON and fromCrossJSON do not validate a sequence node's done index. A crafted done index can create an iterator that never finishes when application code consumes it to completion. An unauthenticated request to a service that deserializes untrusted input can therefore block the event loop, exhaust process memory, or make the service unavailable. This issue is fixed in version 1.6.8.
Executive ViewAI
CVE-2026-116581 is a high-severity availability vulnerability in the Seroval library (versions before 1.6.8) that can allow remote unauthenticated attackers to crash or degrade services that deserialize untrusted JSON. Any product or internal service relying on Seroval to parse untrusted input is at risk of downtime, which could disrupt customer-facing operations and erode trust. Leadership should prioritize remediation because the flaw is trivially exploitable via crafted payloads, even though no active exploitation has been observed.
Apply vendor patch.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.
Deserialization of attacker-controlled JSON in plugin-capable Seroval releases 0.12.0 through 1.6.1 lets a remote unauth
Denial of service in Seroval versions prior to 1.6.3 allows unauthenticated remote attackers to exhaust CPU and memory b
Denial of service in the seroval npm package (versions 1.4.1 through 1.6.7) lets an unauthenticated remote attacker who
Arbitrary code execution in Seroval versions 1.4.0 and below allows authenticated attackers to execute malicious JavaScr
Seroval versions 1.4.0 and below are vulnerable to denial of service through malformed deserialization payloads that spe
Seroval versions 1.4.0 and below are vulnerable to denial of service attacks due to unbounded recursion when serializing
Seroval versions 1.4.0 and below allow remote attackers to cause denial of service through maliciously crafted RegExp pa
Seroval deserialization can invoke attacker-chosen callables when an application passes untrusted input to fromJSON and
Seroval is affected by improperly controlled modification of object prototype attributes (prototype pollution) (CVSS 7.3
Code injection in the Seroval JavaScript serialization library 1.6.0 through 1.6.10 lets attacker-controlled text become
Script injection in seroval's JavaScript-output serializers lets a RegExp whose source contains '<' terminate an HTML <s
EUVD-2026-110367
GHSA-97r2-qh9m-474h
NVD
CVE.org
EPSS
Exploit-DB