В Exim 4.99.2 закрыли четыре уязвимости: от повреждения памяти до утечки данных

Exim

Разработчики популярного почтового сервера Exim выпустили корректирующий релиз 4.99.2, в котором устранили четыре уязвимости. Проблемы затрагивают как возможность аварийного завершения процессов, так и повреждение кучи (области динамической памяти) с потенциальной утечкой конфиденциальных данных. Поскольку Exim используется на миллионах серверов по всему миру, администраторам следует как можно скорее обновить ПО до последней версии.

Детали уязвимостей

Первая уязвимость, зарегистрированная под идентификатором CVE-2026-40685, связана с обработкой JSON-данных (формат обмена данными) в заголовках писем. Если в почтовом сервере включены операторы для работы с JSON, то злоумышленник может отправить специально сформированное письмо с искажённой JSON-структурой. Из-за некорректной реализации пропуска управляющих символов в Exim возникает переполнение буфера: данные записываются за пределами отведённой области памяти в куче. Это может привести не только к аварийному завершению сеанса, но и к выполнению произвольного кода, хотя разработчики в официальном уведомлении не указывают такую возможность напрямую. Тем не менее, любое повреждение кучи считается серьёзным риском.

Вторая уязвимость - CVE-2026-40686 - также связана с некорректной обработкой заголовков. На этот раз проблема кроется в работе с символами UTF-8 (стандарт кодирования текста). Когда почтовый сервер сталкивается с неправильно сформированными многобайтовыми последовательностями в конце заголовка, Exim может прочитать данные за границами буфера. В результате при формировании сообщения об ошибке для следующего письма в том же соединении в текст ответа могут попасть фрагменты оперативной памяти, в том числе, возможно, и конфиденциальная информация. Утечка данных из памяти - классический вектор для дальнейших атак, особенно если в памяти содержатся пароли, ключи шифрования или содержимое других писем.

Третья уязвимость - CVE-2026-40687 - затрагивает драйвер аутентификации SPA (Simple Password Authentication - простая аутентификация по паролю), который используется при подключении к внешним серверам NTLM (протокол сетевой аутентификации). Если администратор настроил Exim на взаимодействие с удалённым SPA/NTLM-сервером, который контролируется злоумышленником, то вредоносный сервер может отправить такие данные, которые вызовут переполнение буфера при чтении или записи. Это способно привести к сбою сеанса связи, а также к утечке содержимого неинициализированной кучи на сторону атакующего. Важно отметить: для эксплуатации этой уязвимости необходимо, чтобы Exim был настроен на использование SPA-аутентификации с потенциально недоверенным внешним сервером.

Четвёртая уязвимость - CVE-2026-40684 - проявляется только на системах, использующих библиотеку языка Си musl (альтернатива распространённой glibc, встречается в некоторых дистрибутивах Linux, например, Alpine). Проблема возникает при обработке специально оформленных DNS-записей обратного разрешения имён (PTR-записи). Из-за особенностей вывода восьмеричных чисел в musl libc при разборе такой записи происходит аварийное завершение сеанса соединения. Злоумышленник может инициировать отказ в обслуживании, отправляя вредоносные DNS-ответы. На системах с glibc эта уязвимость не воспроизводится.

Все четыре проблемы исправлены в версии Exim 4.99.2. Уязвимыми остаются все версии ранее 4.99.2, включая стабильные сборки в дистрибутивах Debian (от bullseye до forky) и, вероятно, в других операционных системах, где Exim распространяется через официальные репозитории. Разработчики обращают внимание на то, что более старые версии Exim, которые больше не поддерживаются (например, ветки 4.9x ранних выпусков), также могут быть уязвимы, но исправлений для них не предоставляется.

В официальном анонсе релиза авторы Exim сделали необычное примечание, поблагодарив "тысячи не названных поимённо авторов, чьи работы были поглощены slopbots для „помощи“ в составлении отчётов об этих уязвимостях". Это явный намёк на использование систем искусственного интеллекта (или автоматизированных анализаторов) при выявлении проблем. Подобные комментарии редко встречаются в релизных заметках и могут свидетельствовать о растущей роли автоматизированных инструментов в поиске багов безопасности.

Администраторам почтовых серверов на базе Exim рекомендуется немедленно обновить пакет до версии 4.99.2. Для тех, кто использует дистрибутивы Debian или их производные, стоит дождаться официальных корректирующих обновлений в репозиториях, либо установить версию из unstable (sid), где пакет exim4 версии 4.99.2-1 уже помечен как исправленный. Особое внимание следует уделить системам с musl libc (например, Alpine Linux) - для них критична уязвимость CVE-2026-40684, так как она позволяет вызвать отказ в обслуживании без специальных привилегий. Однако и остальные проблемы не менее опасны: переполнение кучи и утечка памяти могут привести к компрометации всего почтового сервера.

Хотя разработчики не сообщают о случаях активной эксплуатации этих уязвимостей на момент публикации, практика показывает, что после выхода исправлений злоумышленники часто начинают анализировать патчи и создавать рабочие эксплойты. Поэтому затягивать с обновлением не стоит - лучше обновиться до выхода потенциальных атак.

Ссылки

Комментарии: 0