CVE-2026-103501
NieznaneStreszczenie
Podatność typu heap buffer overflow w deserializacji szkicu HLL w Apache DataSketches C++ (datasketches-cpp). Przy deserializacji szkicu w trybie LIST liczba kuponów była odczytywana z danych wejściowych i używana jako liczba wpisów kopiowanych do stałego bufora o rozmiarze 8, bez sprawdzenia pojemności. Spreparowany szkic może spowodować zapis do 988 bajtów poza końcem bufora sterty, uszkadzając pamięć. Dotyczy wersji od 1.0.0-incubating do 5.3.0.
Ocena ryzyka
Aplikacje deserializujące szkice HLL z niezaufanych źródeł mogą ulec awarii lub uszkodzeniu pamięci sterty, co potencjalnie umożliwia dalszą eksploatację. Może to prowadzić do odmowy usługi i przejęcia kontroli nad procesem.
Rekomendacja
Zaktualizuj Apache DataSketches C++ do wersji 5.3.0. Unikaj deserializacji szkiców HLL z niezaufanych źródeł.
Inne podatności w Apache DataSketches C++
Zobacz wszystkie- CVE-2026-103636Nieznane
Podatność typu out-of-bounds read w deserializacji unii VarOpt w Apache DataSketches C++ (datasketches-cpp). Funkcja var_opt_union::deserialize() odczytywała 32-bajtowy nagłówek po sprawdzeniu dostępności tylko 8 bajtów, co przy obciętych danych mogło powodować odczyt do 24 bajtów poza końcem bufora. Może to prowadzić do awarii (odmowa usługi) i ujawnienia sąsiedniej pamięci. Dotyczy wersji od 2.0.0-incubating do 5.3.0.
- CVE-2026-103635Nieznane
Podatność typu out-of-bounds read w deserializacji kompaktowego szkicu Theta w Apache DataSketches C++ (datasketches-cpp). Funkcje compact_theta_sketch::deserialize() i wrapped_compact_theta_sketch::wrap() odczytywały pola nagłówka przed sprawdzeniem długości danych; w formacie skompresowanym sprawdzenie rozmiaru mogło zostać obejście przez przepełnienie 32-bitowe. Spreparowany lub obcięty szkic może powodować odczyt poza końcem bufora, duży w przypadku skompresowanym, co może prowadzić do awarii i ujawnienia pamięci. Dotyczy wersji od 3.1.0 do 5.3.0.
- CVE-2026-103513Nieznane
Podatność typu out-of-bounds read i write w deserializacji szkicu CPC w Apache DataSketches C++ (datasketches-cpp). Spreparowany szkic CPC przekazany do cpc_sketch::deserialize() może spowodować odczyt poza końcem skompresowanych danych, a w wariancie hybrydowym także zapis poza wewnętrznym buforem sterty z powodu braku walidacji indeksów wierszy. Może to uszkodzić pamięć sterty, powodując awarię i potencjalnie umożliwiając dalszą eksploatację. Dotyczy wersji od 2.0.0-incubating do 5.3.0.
Oryginalny opis (angielski, źródło NVD)
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.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

