CVE-2026-103501: Apache DataSketches: datasketches-cpp: HLL CouponList Deserialization Buffer Overflow allows memory corruption via a crafted sketch
Heap buffer overflow in the HLL sketch deserialization of Apache DataSketches C++ (repo: datasketches-cpp).
When deserializing a sketch in LIST mode, from either a byte buffer or a stream, the coupon count was read from the input and used as the number of entries to copy into a fixed buffer of 8 entries, without checking it against the buffer's capacity. A crafted sketch could cause a write of up to 988 bytes past the end of this internal heap buffer. This can corrupt heap memory, causing a crash and potentially enabling further exploitation.
This issue affects Apache DataSketches C++: from 1.0.0-incubating before 5.3.0. Only applications that deserialize HLL sketches from untrusted sources are affected.
Users are recommended to upgrade to version 5.3.0, which fixes this issue.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
Apache DataSketches C++ (datasketches-cpp)to a version that resolves this vulnerability.Fixed in 5.3.0
Event History
Frequently Asked Questions
Which deployments are exposed to this issue?
Applications using Apache DataSketches C++ versions from 1.0.0-incubating before 5.3.0 are affected only if they deserialize HLL sketches obtained from untrusted sources. Applications that do not deserialize untrusted HLL sketch data are not affected.
What must an attacker provide to trigger the overflow?
An attacker must cause the application to deserialize a crafted HLL sketch in LIST mode, supplied through either a byte buffer or a stream. The sketch's coupon count is used without validating it against the internal eight-entry buffer capacity.
What is the impact of successful exploitation?
The crafted sketch can write up to 988 bytes beyond an internal heap buffer. This can corrupt heap memory, cause a crash, and potentially enable further exploitation.
What remediation is available?
Upgrade Apache DataSketches C++ to version 5.3.0, which fixes the issue.