Funkcja pe_ILF_object_p w bibliotece BFD (libbfd) wchodzącej w skład GNU Binutils 2.28 zawiera podatność typu heap-based buffer over-read o rozmiarze 4049 bajtów. Błąd może prowadzić do awarii programów oraz ujawnienia zawartości pamięci.
▸ Pokaż oryginał (EN)
The pe_ILF_object_p function in the Binary File Descriptor (BFD) library (aka libbfd), as distributed in GNU Binutils 2.28, is vulnerable to a heap-based buffer over-read of size 4049 because it uses the strlen function instead of strnlen, leading to program crashes in several utilities such as addr2line, size, and strings. It could lead to information disclosure as well.
Podatność wynika z użycia funkcji strlen zamiast bezpieczniejszej strnlen podczas przetwarzania plików obiektowych w formacie PE ILF. Brak ograniczenia długości odczytywanego łańcucha tekstowego powoduje odczyt poza granice przydzielonego bufora na stercie (heap over-read) o rozmiarze 4049 bajtów. Efektem jest crash aplikacji lub potencjalne ujawnienie danych z pamięci procesu.
Atakujący może doprowadzić do awarii (crash) narzędzi takich jak addr2line, size oraz strings, a także potencjalnie uzyskać dostęp do danych z pamięci procesu (information disclosure).
Należy zastosować patche dostępne u producenta zgodnie z referencjami (zgłoszenie błędu: https://sourceware.org/bugzilla/show_bug.cgi?id=20905). Zaleca się aktualizację GNU Binutils do wersji zawierającej poprawkę.
GNU Binutils w wersji 2.28 — dotyczy biblioteki libbfd oraz narzędzi addr2line, size i strings.
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:HGnu Binutils
APPGnu2.28
Powiązane podatności
GNU Binutils: heap-based buffer overflow w funkcji finish_stab (objdump)
GNU Binutils: null pointer dereference w elflink.c biblioteki libbfd
Stack buffer overflow w GNU Binutils przy przetwarzaniu plików Intel Hex
GNU Binutils readelf: heap buffer over-read przy przetwarzaniu plików RL78
A flaw was found in binutils. A heap-buffer-overflow vulnerability exists when processing a specially crafted ...