Gửi #928781: tdunning t-digest 3.2 Unvalidated Length Fields Enable Crashthông tin

tiêu đềtdunning t-digest 3.2 Unvalidated Length Fields Enable Crash
Mô tảI was auditing t-digest 3.2's binary deserialization path for spots where untrusted bytes land directly on an array index or allocation size. MergingDigest.fromBytes(ByteBuffer) reads four attacker-controlled numeric fields (compression, n, bufferSize, lastUsedCell) straight off the wire and uses every one of them without a bounds check, so a handful of crafted bytes is enough to throw NegativeArraySizeException or ArrayIndexOutOfBoundsException before a single real centroid gets parsed. I confirmed the same unvalidated code is still on master today, and found a real consumer — Apache Pinot's star-tree aggregator — that fed this exact method with raw ingested byte[] values with no validation of its own until a July 2026 hardening PR.
Nguồn⚠️ https://github.com/tdunning/t-digest/issues/227
Người dùng
 Yu Bao from PayPal Cyber Security Team (UID 99838)
Đệ trình14/08/2026 03:36 (cách đây 2 các tháng)
Kiểm duyệt14/09/2026 09:11 (1 month later)
Trạng tháiBản sao
Mục VulDB402019 [tdunning t-digest đến 3.3 Serialization MergingDigest.fromBytes capacity tràn bộ đệm]
điểm0

Do you want to use VulDB in your project?

Use the official API to access entries easily!