
Команда разработчиков почтового сервера Exim выпустила экстренное обновление под номером 4.99.3. Релиз исправляет критическую уязвимость, затрагивающую специфические конфигурации почтового агента. Проблеме присвоен внутренний идентификатор EXIM-Security-2026–05–01.1 (также известна как CVE-TBD).
Суть уязвимости: Remote Use-After-Free
Уязвимость классифицируется как Remote Use-After-Free (удаленное использование памяти после освобождения). Ошибка проявляется при обработке тела сообщения BDAT, если почтовый сервер использует TLS-библиотеку GnuTLS. Напомним, что команда BDAT является частью SMTP-расширения CHUNKING и предназначена для поэтапной передачи тела письма.
Сценарий атаки выглядит следующим образом: злоумышленник инициирует передачу BDAT, после чего до завершения процесса отправляет уведомление close_notify в рамках TLS-сессии, а затем передает дополнительный байт через то же TCP-соединение. В результате Exim предпринимает попытку записи данных в область памяти, которая уже была освобождена после закрытия TLS-сессии. Это повреждает кучу и создает условия для удаленного выполнения произвольного кода.
Какие системы под угрозой
Проблема актуальна для Exim версий 4.97, 4.98, 4.99, 4.99.1 и 4.99.2. Важное уточнение: уязвимости подвержены только те сборки, в которых активирована поддержка GnuTLS (конфигурация USE_GNUTLS=yes). Инсталляции, работающие с OpenSSL или другими TLS-библиотеками, находятся в безопасности.
Для эксплуатации уязвимости должны выполняться два условия:
- в конфигурации сервера активированы функции STARTTLS и CHUNKING;
- сервер использует бэкенд GnuTLS.
Исправление и рекомендации
Патч, включенный в Exim 4.99.3, корректирует сброс стека обработки ввода при получении TLS-уведомления close_notify в момент активной передачи BDAT. Это исключает возможность обращения к некорректным указателям памяти. Разработчики подчеркивают, что обновление до актуальной версии является единственным надежным способом защиты.
Информация об ошибке была получена 1 мая 2026 года от Федерико Киршбаума (Federico Kirschbaum) из компании XBOW Security. После подтверждения уязвимости работа над патчем велась в закрытом режиме: 7 мая были уведомлены дистрибутивы, 10 мая им предоставили доступ к коду, а 12 мая 2026 года состоялся публичный релиз.
Администраторам рекомендуется провести аудит своих почтовых систем. Если ваша версия Exim находится в диапазоне 4.97–4.99.2 и использует GnuTLS в связке с STARTTLS и CHUNKING, необходимо оперативно установить Exim 4.99.3. Исходные тексты уже доступны в официальном репозитории (ветка exim-4.99+fixes и тег exim-4.99.3).






