CVE-2019-16227
KrytyczneStreszczenie
W bibliotece py-lmdb 0.97 odkryto problem, w którym dla określonych wartości flag mn_flags funkcja mdb_cursor_set wywołuje memcpy z nieprawidłową operacją zapisu wewnątrz mdb_xcursor_init1. Problem występuje podczas dostępu do pliku data.mdb dostarczonego przez atakującego.
Ocena ryzyka
Atakujący może dostarczyć specjalnie spreparowany plik data.mdb, który po otwarciu przez aplikację korzystającą z py-lmdb może spowodować nieprawidłowy zapis pamięci, potencjalnie prowadząc do awarii lub wykonania dowolnego kodu.
Rekomendacja
Należy zaktualizować bibliotekę py-lmdb do wersji nowszej niż 0.97, w której usunięto tę podatność. Unikać otwierania plików data.mdb z niezaufanych źródeł.
Inne podatności w py-lmdb
Zobacz wszystkie- CVE-2019-16226Wysokie
W bibliotece py-lmdb 0.97 odkryto podatność polegającą na braku walidacji operacji memmove w funkcji mdb_node_del dla nieoczekiwanej wartości node->mn_hi, co prowadzi do nieprawidłowej operacji zapisu. Problem występuje podczas dostępu do pliku data.mdb dostarczonego przez atakującego.
- CVE-2019-16228Wysokie
W bibliotece py-lmdb 0.97 odkryto błąd dzielenia przez zero w funkcji mdb_env_open2, który występuje, gdy funkcja mdb_env_read_header odczyta zerową wartość dla określonego pola rozmiaru. Problem może zostać wykorzystany poprzez dostarczenie spreparowanego pliku data.mdb.
- CVE-2019-16224Krytyczne
W bibliotece py-lmdb 0.97 odkryto podatność polegającą na nieprawidłowym ustawieniu miejsca docelowego dla funkcji memcpy w przypadku określonych wartości md_flags, co prowadzi do nieprawidłowej operacji zapisu. Problem występuje podczas dostępu do pliku data.mdb dostarczonego przez atakującego.
- CVE-2019-16225Krytyczne
W bibliotece py-lmdb 0.97 odkryto problem, w którym funkcja mdb_page_touch nieprawidłowo ustawia mc->mc_pg[mc->top] dla określonych wartości mp_flags, co prowadzi do nieprawidłowej operacji zapisu. Podatność może być wykorzystana poprzez dostarczenie spreparowanego pliku data.mdb.
Oryginalny opis (angielski, źródło NVD)
An issue was discovered in py-lmdb 0.97. For certain values of mn_flags, mdb_cursor_set triggers a memcpy with an invalid write operation within mdb_xcursor_init1. NOTE: this outcome occurs when accessing a data.mdb file supplied by an attacker.

