CVE-2016-4331
WysokieStreszczenie
Podczas dekodowania danych z zestawu danych zakodowanego przy użyciu dekodowania H5Z_NBIT, biblioteka HDF5 w wersji 1.8.16 nie zapewnia, że precyzja mieści się w granicach rozmiaru, co prowadzi do możliwości wykonania dowolnego kodu.
Ocena ryzyka
Wykorzystanie tej podatności może prowadzić do nieautoryzowanego wykonania kodu w systemie, co stwarza poważne zagrożenie dla bezpieczeństwa organizacji.
Rekomendacja
Zaleca się aktualizację biblioteki HDF5 do najnowszej wersji, aby usunąć tę podatność oraz przeprowadzenie audytu bezpieczeństwa aplikacji korzystających z tej biblioteki.
Inne podatności w HDF5 1.8.16
Zobacz wszystkie- CVE-2017-17509Wysokie
W HDF5 w wersji 1.10.1 występuje podatność na zapis poza granicami w funkcji H5G__ent_decode_vec w pliku H5Gcache.c w bibliotece libhdf5.a. Na przykład, użycie narzędzia h5dump może spowodować awarię lub inne nieokreślone skutki, gdy otworzy się spreparowany plik hdf5.
- CVE-2016-4333Wysokie
Biblioteka HDF5 w wersji 1.8.16 ma lukę, która pozwala na modyfikację wskaźnika pętli inicjalizującej tablicę, co może prowadzić do wskazywania poza granice tablicy. Wartość używana do alokacji przestrzeni pochodzi z pliku, co stwarza ryzyko manipulacji przez atakującego.
- CVE-2016-4332Wysokie
Biblioteka HDF5 w wersji 1.8.16 nie sprawdza, czy określone typy wiadomości obsługują dany znacznik, co prowadzi do rzutowania struktury na alternatywną strukturę i przypisywania wartości do pól, które nie są obsługiwane przez typ wiadomości. Może to skutkować wykonaniem kodu w kontekście biblioteki.
- CVE-2016-4330Wysokie
W bibliotece HDF5 w wersji 1.8.16 występuje błąd polegający na braku sprawdzenia, czy liczba wymiarów tablicy odczytanej z pliku mieści się w granicach przydzielonej dla niej przestrzeni. Może to prowadzić do przepełnienia bufora na stercie, co potencjalnie umożliwia wykonanie dowolnego kodu.
- CVE-2026-19029Średnie
W HDF5 do wersji 2.2.0 występuje przepełnienie bufora na stercie (heap-based buffer over-read) w funkcji H5Z__filter_scaleoffset() w pliku src/H5Zscaleoffset.c. Atakujący może spowodować odmowę usługi (awarię aplikacji) za pomocą spreparowanego pliku HDF5. Gdy zapisane minimalne bity są równe pełnej precyzji typu danych, dekoder kopiuje d_nelmts * size bajtów z skompresowanego fragmentu bez sprawdzania, czy fragment zawiera tyle bajtów.
- CVE-2026-106547Wysokie
Przepełnienie bufora na stercie w funkcji H5VM_array_fill() w pliku src/H5VM.c w bibliotece HDF5 przed wersją 2.2.0. Złośliwy plik HDF5 może spowodować awarię aplikacji, a potencjalnie także wykonanie dowolnego kodu, gdy odczytywane są nieprzydzielone fragmenty zbioru danych, a metadane są niespójne z rozmiarem bufora.
- CVE-2026-92627Średnie
W HDF5 przed wersją 1.14.2 występuje podatność use-after-free w funkcji H5T__conv_f_f() w pliku src/H5Tconv.c. Podczas konwersji typu złożonego zawierającego elementy zmiennoprzecinkowe przy odczycie zbioru danych tymczasowy bufor przydzielony przez calloc() jest zwalniany, a następnie odczytywany w tej samej procedurze konwersji.
- CVE-2026-19028Średnie
HDF5 przed wersją 2.3.0 zawiera podatność w funkcji H5Z__filter_fletcher32, która oblicza długość danych do sumy kontrolnej odejmując 4 bajty od rozmiaru bufora bez sprawdzenia, czy bufor ma co najmniej 4 bajty, co prowadzi do niedomiaru (underflow) typu size_t. Atakujący może spowodować odmowę usługi (masywne odczyty poza zakresem i awarię aplikacji) poprzez spreparowany plik HDF5 z filtrem Fletcher32 dla fragmentu mniejszego niż 4 bajty, wyzwalanego przez H5Dread, np. narzędziami h5ls lub h5dump.
- CVE-2026-19027Średnie
HDF5 przed wersją 2.3.0 zawiera podatność w funkcjach H5Z__nbit_decompress_one_byte, H5Z__nbit_decompress_one_nooptype i H5Z__nbit_decompress_one_atomic, które przesuwają indeks odczytu w buforze skompresowanego fragmentu bez ograniczenia go do rzeczywistego rozmiaru bufora. Atakujący może spowodować odczyt poza zakresem sterty, a w ograniczonych przypadkach ujawnienie sąsiedniej pamięci sterty w wartościach dekompresowanych danych, poprzez spreparowany plik HDF5 z parametrami filtra N-Bit opisującymi więcej danych niż faktycznie zawiera skompresowany fragment, wyzwalanego przez H5Dread, np. narzędziami h5ls lub h5repack.
- CVE-2026-19026Średnie
HDF5 przed wersją 2.3.0 zawiera podatność w funkcji H5Z__filter_nbit, która dereferencjonuje cd_values[0] do cd_values[4] bez sprawdzenia, czy cd_values nie jest NULL lub czy cd_nelmts jest co najmniej 5. Atakujący może spowodować odmowę usługi poprzez spreparowany plik HDF5, który przechowuje komunikat potoku filtra N-Bit z zerową liczbą wartości klienta, otwierany i odczytywany przez H5Dread, np. narzędziami h5ls lub h5repack.
Oryginalny opis (angielski, źródło NVD)
When decoding data out of a dataset encoded with the H5Z_NBIT decoding, the HDF5 1.8.16 library will fail to ensure that the precision is within the bounds of the size leading to arbitrary code execution.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

