Security Lab

Удаленное переполнение буфера в Fetchmail

Дата публикации:17.12.2002
Дата изменения:17.06.2008
Всего просмотров:1402
Опасность:
Средняя
Наличие исправления: Да
Количество уязвимостей:1
CVE ID: Нет данных
Вектор эксплуатации: Удаленная
Воздействие: Компрометация системы
CWE ID: Нет данных
Наличие эксплоита: Нет данных
Уязвимые продукты: Fetchmail 6.x
Описание: Повторная ревизия исходного кода в Fetchmail позволила обнаружить еще одно переполнение буфера в заданной по умолчанию конфигурации. Это переполнение динамической памяти может использоваться удаленными хакерами, чтобы разрушить систему или выполнить произвольный код с привилегиями fetchmail пользователя. В зависимости от конфигурации системы, уязвимость позволяет получить root привилегии.

Когда Fetchmail получает сообщение, он выполняет так называемую проверку “ reply-hack”. Это в основном означает, что все заголовки, которые содержат адреса, будут проверены на наличие локального адресе (без @domain части). Когда такой адрес найден, Fetchmail добавляет в конец @ и имя хоста почтового сервера. Чтобы избежать ненужного перераспределения выходного буфера в течение этого процесса, Fetchmail сперва рассчитывает число адресов внутри заголовков. Затем он резервирует память для случая, когда все адреса в почтовом сообщении локальные. К сожалению это вычисление неправильно, потому что Fetchmail не учитывает дополнительное пространство после @. Это означает, если у вас есть достаточно локальных адресов в почтовом заголовке, то каждый дополнительный адрес переполнит буфер на один байт. Это приводит к произвольному переполнению динамической памяти, которое может использоваться для выполнения произвольного кода на LINUX системах. Так как это переполнение происходит в malloc() области, на BSD системах уязвимость может использоваться только для DoS атаки.

Наконец важно упомянуть, что нападающий не нуждается в спуфинге DNS записей и ему не нужно управлять злонамеренным почтовым сервером, чтобы эксплуатировать эту уязвимость. Обычно достаточно послать почтовое сообщение жертве, которок содержит специально обработанные строки в заголовке.

Уязвимость обнаружена Fetchmail <= 6.1.3

Ссылки: Fetchmail remote vulnerability