LINUX.ORG.RU

Опасная уязвимость в GNU strings и других утилитах binutils

 ,


0

2

В популярной утилите strings, входящей в состав пакета GNU binutils и используемой для выделения из файла строковых данных, выявлена опасная уязвимость, которая может привести к выполнению кода при открытии специально оформленного файла в формате ELF. Проблема заключается в том, что по умолчанию для исполняемых файлов в strings помимо обычного алгоритма выделения строк используются функции библиотеки libbfd (данное поведение отключается при указании опции "-a"), ошибка в коде разбора заголовков формата ELF в которой приводит к переполнению буфера.

Библиотека libbfd также используется в других утилитах, в том числе в objdump, gdb, nm, stringme и readelf, но утилита strings более популярна и обычно первым делом используется исследователями безопасности при анализе содержимого тех или иных файлов, загруженных извне. Уязвимости в strings никто не ожидал, так как считается, что strings выполняет простую операцию фильтрации печатных символов, в которой маловероятно возникновение ошибок, способных привести к уязвимостям. При этом мало кто знает, что при разборе объектных файлов, вариант утилиты strings из пакета GNU binutils привлекает внешнюю библиотеку libbfd для определения исполняемого файла и разбора его заголовков.

Пример файла, при обработке которого происходит крах можно загрузить здесь. По предварительной оценке уязвимость вполне пригодна для эксплуатации и в скором времени можно ожидать создания рабочего эксплоита. Так как, вероятно, что проблемы в libbfd не ограничиваются одной уязвимостью, разработчикам дистрибутивов рекомендуется перейти к включению по умолчанию опции "-a" в утилите strings.

За появлением патча с устранением проблемы можно проследить на данной странице (сообщается, что выпущенное в августе исправление устраняет проблему, но данная информация ещё не подтверждена). Обновления пакетов для дистрибутивов пока не выпущены, идентификатор CVE не присвоен. Интересно, что ранее уже публиковались сообщения об ошибках, связанных с данной проблемой, например, пользователи Gentoo обратили внимание на крахи утилит из состава binutils ещё в 2005 году. Аналогичные проблемы с разбором ELF-файлов на днях также обнаружены в коде readelf.c из состава библиотеки libmagic, а также в основанных на данной библиотеке пакете "file" и в PHP-модуле "fileinfo".

Источник

Перемещено beastie из security

anonymous

Да чтоб их... Опять кучу серваков обновлять.

static ()
Ответ на: комментарий от anonymous

небось для сборки нвидиа блоба стоят, чтоб кеды не тормозили

anonymous ()

кстати, libbfd линкуется статически, емнип

anonymous ()
Ответ на: комментарий от anonymous

А чего? Типа на серваках кроме драйвера для мышки (чтобы кликать пуск->настройки->панель управления) ничего не надо?

Lavos ★★★★★ ()
Ответ на: комментарий от anonymous

серваков

binutils

А что, по зависимостям какбудто они не могут быть установлены?

У меня например их тянет chkrootkit который стоит на каждом серваке.

Вот пруф: https://packages.debian.org/wheezy/chkrootkit

static ()
Ответ на: комментарий от Lavos

обычно считается что злоумышленнику будет проще собирать зловредный код

anonymous ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.