t-digest — security advisory
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.
- Products
- t-digest
- Affected versions
- 1:3.0-1build1, 1:3.0-3, 1:3.0-3build1
- Fixed versions
- Not specified
- CVEs
- CVE-2026-87822
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 31 Oct 2026, 03:25 UTC · Revision 1
Source evidence
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.
osv:UBUNTU-CVE-2026-87822
t-digest
Fixed versions: Not specified
t-digest
Fixed versions: Not specified
t-digest
Fixed versions: Not specified
t-digest
Fixed versions: Not specified
t-digest
Fixed versions: Not specified
t-digest
Fixed versions: Not specified
t-digest
Fixed versions: Not specified
Complete source record
{
"id": "f54640f24b73e80472fdf990eaa30530648b40a70eaa0b4daebd96c0e36bf4f2",
"url": "https://osv.dev/vulnerability/UBUNTU-CVE-2026-87822",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "UBUNTU-CVE-2026-87822",
"summary": "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.",
"evidence": "osv:UBUNTU-CVE-2026-87822",
"products": [
{
"name": {
"value": "t-digest",
"evidence": "/affected/0/package/name"
},
"prerequisites": [],
"fixed_versions": [],
"affected_versions": [
{
"value": "1:3.0-1build1",
"evidence": "/affected/0/versions"
}
]
},
{
"name": {
"value": "t-digest",
"evidence": "/affected/1/package/name"
},
"prerequisites": [],
"fixed_versions": [],
"affected_versions": [
{
"value": "1:3.0-1build1",
"evidence": "/affected/1/versions"
}
]
},
{
"name": {
"value": "t-digest",
"evidence": "/affected/2/package/name"
},
"prerequisites": [],
"fixed_versions": [],
"affected_versions": [
{
"value": "1:3.0-3",
"evidence": "/affected/2/versions"
}
]
},
{
"name": {
"value": "t-digest",
"evidence": "/affected/3/package/name"
},
"prerequisites": [],
"fixed_versions": [],
"affected_versions": [
{
"value": "1:3.0-3",
"evidence": "/affected/3/versions"
}
]
},
{
"name": {
"value": "t-digest",
"evidence": "/affected/4/package/name"
},
"prerequisites": [],
"fixed_versions": [],
"affected_versions": [
{
"value": "1:3.0-3",
"evidence": "/affected/4/versions"
}
]
},
{
"name": {
"value": "t-digest",
"evidence": "/affected/5/package/name"
},
"prerequisites": [],
"fixed_versions": [],
"affected_versions": [
{
"value": "1:3.0-3build1",
"evidence": "/affected/5/versions"
}
]
},
{
"name": {
"value": "t-digest",
"evidence": "/affected/6/package/name"
},
"prerequisites": [],
"fixed_versions": [],
"affected_versions": [
{
"value": "1:3.0-3",
"evidence": "/affected/6/versions"
},
{
"value": "1:3.0-3build1",
"evidence": "/affected/6/versions"
}
]
}
],
"severity": "high",
"structured": {
"id": "UBUNTU-CVE-2026-87822",
"aliases": [
"UBUNTU-CVE-2026-87822"
],
"metrics": [
{
"type": "CVSS_V3",
"score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
},
{
"type": "CVSS_V4",
"score": "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"
},
{
"type": "Ubuntu",
"score": "medium"
}
],
"affected": [
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
}
]
}
],
"package": {
"name": "t-digest",
"purl": "pkg:deb/ubuntu/t-digest?arch=source&distro=xenial",
"ecosystem": "Ubuntu:16.04:LTS"
},
"versions": [
"1:3.0-1build1"
],
"database_specific": {
"source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-87822.json"
},
"ecosystem_specific": {
"binaries": [
{
"binary_name": "libt-digest-java",
"binary_version": "1:3.0-1build1"
}
]
}
},
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
}
]
}
],
"package": {
"name": "t-digest",
"purl": "pkg:deb/ubuntu/t-digest?arch=source&distro=bionic",
"ecosystem": "Ubuntu:18.04:LTS"
},
"versions": [
"1:3.0-1build1"
],
"database_specific": {
"source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-87822.json"
},
"ecosystem_specific": {
"binaries": [
{
"binary_name": "libt-digest-java",
"binary_version": "1:3.0-1build1"
}
]
}
},
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
}
]
}
],
"package": {
"name": "t-digest",
"purl": "pkg:deb/ubuntu/t-digest?arch=source&distro=focal",
"ecosystem": "Ubuntu:20.04:LTS"
},
"versions": [
"1:3.0-3"
],
"database_specific": {
"source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-87822.json"
},
"ecosystem_specific": {
"binaries": [
{
"binary_name": "libt-digest-java",
"binary_version": "1:3.0-3"
}
]
}
},
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
}
]
}
],
"package": {
"name": "t-digest",
"purl": "pkg:deb/ubuntu/t-digest?arch=source&distro=jammy",
"ecosystem": "Ubuntu:22.04:LTS"
},
"versions": [
"1:3.0-3"
],
"database_specific": {
"source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-87822.json"
},
"ecosystem_specific": {
"binaries": [
{
"binary_name": "libt-digest-java",
"binary_version": "1:3.0-3"
}
]
}
},
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
}
]
}
],
"package": {
"name": "t-digest",
"purl": "pkg:deb/ubuntu/t-digest?arch=source&distro=noble",
"ecosystem": "Ubuntu:24.04:LTS"
},
"versions": [
"1:3.0-3"
],
"database_specific": {
"source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-87822.json"
},
"ecosystem_specific": {
"binaries": [
{
"binary_name": "libt-digest-java",
"binary_version": "1:3.0-3"
}
]
}
},
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
}
]
}
],
"package": {
"name": "t-digest",
"purl": "pkg:deb/ubuntu/t-digest?arch=source&distro=stonking",
"ecosystem": "Ubuntu:26.10"
},
"versions": [
"1:3.0-3build1"
],
"database_specific": {
"source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-87822.json"
},
"ecosystem_specific": {
"binaries": [
{
"binary_name": "libt-digest-java",
"binary_version": "1:3.0-3build1"
}
]
}
},
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
}
]
}
],
"package": {
"name": "t-digest",
"purl": "pkg:deb/ubuntu/t-digest?arch=source&distro=resolute",
"ecosystem": "Ubuntu:26.04:LTS"
},
"versions": [
"1:3.0-3",
"1:3.0-3build1"
],
"database_specific": {
"source": "https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-87822.json"
},
"ecosystem_specific": {
"binaries": [
{
"binary_name": "libt-digest-java",
"binary_version": "1:3.0-3build1"
}
]
}
}
],
"modified": "2026-10-17T13:01:14.867797481Z",
"provider": "osv",
"upstream": [
"CVE-2026-87822"
],
"references": [
"https://ubuntu.com/security/CVE-2026-87822",
"https://www.cve.org/CVERecord?id=CVE-2026-87822"
]
},
"related_cves": [
{
"value": "CVE-2026-87822",
"evidence": "/upstream"
}
],
"security_relevant": true,
"severity_evidence": "/severity/1/score"
},
"source_id": "core-osv",
"document_id": 361356,
"published_at": "2026-09-09T15:17:00+00:00"
}