GNU Binutils до 2.46 readelf содержит двойную свободную уязвимость при обработке созданного двоичного файла ELF с неверными данными перемещения. Во время обработки перемещения GOT dump_relocations может вернуться раньше, без инициализации массива all_relocations. В результате процесс_got_section_contents() может передать неинициализированный указатель r_symbol в функцию free(), что приведет к двойному освобождению и завершению программы с помощью SIGABRT.
Никаких свидетельств возможного повреждения памяти или выполнения кода обнаружено не было; воздействие ограничивается отказом в обслуживании.
Показать оригинальное описание (EN)
GNU Binutils thru 2.46 readelf contains a double free vulnerability when processing a crafted ELF binary with malformed relocation data. During GOT relocation handling, dump_relocations may return early without initializing the all_relocations array. As a result, process_got_section_contents() may pass an uninitialized r_symbol pointer to free(), leading to a double free and terminating the program with SIGABRT. No evidence of exploitable memory corruption or code execution was observed; the impact is limited to denial of service.