ZeroHour

CVE-2026-87822

large

NaN-injection deserialization DoS in t-digest 3.1-3.3

CVSS 4.0
8.7 high
EPSS
<1%p31
Published
()
Modified
AI analysis

t-digest versions 3.1 through 3.3 do not validate centroid means when a serialized digest is parsed in MergingDigest.fromBytes, letting an attacker inject NaN centroids that pass the library's validation checks (algorithmic-complexity flaw, CWE-407). A crafted digest supplied over a network (CVSS 4.0 shows AV:N with no privileges or user interaction) degrades the sorting used during merge operations from O(n log n) to O(n squared), causing severe, CPU-bound processing delays that amount to a denial of service with high availability impact and no confidentiality or integrity impact. Any application or service embedding t-digest 3.1-3.3 and deserializing digests from untrusted sources is affected, while deployments that never deserialize attacker-supplied digests are not meaningfully exposed. No public proof-of-concept is known, the issue is not in CISA's Known Exploited Vulnerabilities catalog, and there are no reports of exploitation in the wild.

What to do: Upgrade t-digest to a patched release newer than 3.3 as soon as one is available, and in the meantime avoid deserializing digests from untrusted sources or explicitly reject NaN centroid means around MergingDigest.fromBytes. Audit code paths that pass user- or network-supplied data to MergingDigest.fromBytes, and monitor CPU and latency on merge-heavy endpoints for signs of abuse.

Affected
t-digest project (open source) t-digest3.1 through 3.3
Estimated exposure
large≈10k-100k exposed deployments (estimate) — t-digest is a widely bundled open-source Java quantile-estimation library common in JVM analytics and search stacks, but no published install counts or scan data exist, so this order of magnitude rests on deployment patterns and the subset…

Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.

Description

t-digest versions 3.1 through 3.3 fail to validate centroid means during deserialization in MergingDigest.fromBytes, allowing attackers to inject NaN values that bypass validation checks. Attackers can craft malicious serialized digests containing NaN centroids that degrade sorting performance from O(n log n) to O(n squared), causing severe processing delays during merge operations.

Weakness
CWE-407
Vector
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X

In the news

No ingested article mentions this CVE yet.