В версиях GNU Binutils до 2.46 readelf содержит уязвимость, которая приводит к освобождению недопустимого указателя при обработке созданного двоичного файла ELF с неверным перемещением или символьными данными. Если dump_relocations возвращается раньше времени из-за ошибок синтаксического анализа, внутренний массив all_relocations может остаться частично неинициализированным. Позже процесс_got_section_contents() может попытаться освободить неверный указатель r_symbol, запуская проверки на повреждение памяти в glibc и заставляя программу завершить работу с SIGABRT.
Никаких признаков дальнейшего повреждения памяти или выполнения кода обнаружено не было; воздействие ограничивается отказом в обслуживании.
Показать оригинальное описание (EN)
GNU Binutils thru 2.46 readelf contains a vulnerability that leads to an invalid pointer free when processing a crafted ELF binary with malformed relocation or symbol data. If dump_relocations returns early due to parsing errors, the internal all_relocations array may remain partially uninitialized. Later, process_got_section_contents() may attempt to free an invalid r_symbol pointer, triggering memory corruption checks in glibc and causing the program to terminate with SIGABRT. No evidence of further memory corruption or code execution was observed; the impact is limited to denial of service. NOTE: this is disputed by third parties because the observed behavior occurred only in pre-release code and did not affect any tagged version.
Характеристики атаки
Последствия
Строка CVSS v3.1
Тип уязвимости (CWE)
Уязвимые продукты 1
| Конфигурация | От (включительно) | До (исключительно) |
|---|---|---|
|
Gnu Binutils
cpe:2.3:a:gnu:binutils:*:*:*:*:*:*:*:*
|
— |
<= 2.46
|