Обнаружена уязвимость qmail, позволяющая использовать его удаленно.

Исследователи безопасности Qualys показали возможность эксплуатации уязвимость в почтовом сервере qmail, известно с 2005 г. (CVE-2005-1513), но не исправлено, так как qmail утверждал, что создать работающий эксплойт нереально который может использоваться для атаки на системы в конфигурации по умолчанию.

Но похоже, что разработчики qmail они были неправы, так как Qualys удалось подготовить эксплойт что опровергает это предположение и позволяет запускать удаленное выполнение кода на сервере, отправив специально созданное сообщение.

Проблема вызвана переполнением функции stralloc_readyplus (), которое может произойти при обработке очень большого сообщения. Для работы требовалась 64-битная система с объемом виртуальной памяти более 4 ГБ.

В первоначальном анализе уязвимостей в 2005 году Даниэль Бернштейн утверждал, что предположение в коде о том, что размер выделенного массива всегда соответствует 32-битному значению, основано на том факте, что никто не предоставляет гигабайты памяти каждому процессу.

За последние 15 лет 64-битные системы на серверах заменили 32-битные системы, объем предоставляемой памяти и пропускная способность сети резко увеличились.

Пакеты, сопровождающие qmail, учитывали комментарий Бернштейна и при запуске процесса qmail-smtpd они ограничили доступную память (например, в Debian 10 ограничение было установлено на уровне 7 МБ).

но Инженеры Qualys обнаружили, что этого недостаточно и в дополнение к qmail-smtpd, удаленная атака может быть проведена на процесс qmail-local, который оставался неограниченным для всех протестированных пакетов.

В качестве доказательства был подготовлен прототип эксплойта, который подходит для атаки на поставляемый Debian пакет с помощью qmail в конфигурации по умолчанию. Чтобы организовать удаленное выполнение кода во время атаки, серверу требуется 4 ГБ свободного дискового пространства и 8 ГБ оперативной памяти.

Эксплойт позволяет выполнять любую команду оболочка с правами любого пользователя в системе, кроме пользователей root и системных пользователей, у которых нет собственного подкаталога в каталоге "/ home"

Атака осуществляется путем отправки очень большого электронного сообщения, который включает в себя несколько строк в заголовке, размером примерно 4 ГБ и 576 МБ.

При обработке указанной строки в qmail-local целочисленное переполнение происходит при попытке доставить сообщение локальному пользователю. Целочисленное переполнение затем приводит к переполнению буфера при копировании данных и возможности перезаписать страницы памяти кодом libc.

Кроме того, в процессе вызова qmesearch () в qmail-local файл «.qmail-extension» открывается с помощью функции open (), что приводит к фактическому запуску системы («. Qmail-extension»). Но поскольку часть файла «расширения» формируется на основе адреса получателя (например, «localuser-extension @ localdomain»), злоумышленники могут организовать запуск команды, указав пользователя «localuser-; команда; @localdomain »в качестве получателя сообщения.

Анализ кода также выявил две уязвимости в дополнительном патче. проверка qmail, который является частью пакета Debian.

  • Первая уязвимость (CVE-2020-3811) позволяет обойти проверку адресов электронной почты, а вторая (CVE-2020-3812) приводит к локальной утечке информации.
  • Вторая уязвимость может быть использована для проверки наличия файлов и каталогов в системе, включая те, которые доступны только пользователю root (qmail-verify запускается с привилегиями root) посредством прямого вызова локального драйвера.

Для этого пакета был подготовлен набор исправлений, устраняющих старые уязвимости с 2005 года путем добавления жестких ограничений памяти в код функции alloc () и новых проблем в qmail.

Кроме того, отдельно была подготовлена ​​обновленная версия патча qmail. Разработчики версии notqmail подготовили свои патчи для блокировки старых проблем, а также начали работу по устранению всех возможных целочисленных переполнений в коде.

источник: https://www.openwall.com/


Содержание статьи соответствует нашим принципам редакционная этика. Чтобы сообщить об ошибке, нажмите здесь.

Будьте первым, чтобы комментировать

Оставьте свой комментарий

Ваш электронный адрес не будет опубликован. Обязательные для заполнения поля помечены *

*

*

  1. Ответственный за данные: Мигель Анхель Гатон
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.