В почтовом сервере Exim выявлена уязвимость, получившая название «Dead.Letter» (CVE-2026-45185). Она позволяет неаутентифицированному злоумышленнику удалённо выполнить произвольный код на сервере. Проблема затрагивает версии Exim с 4.97 по 4.99.2, собранные с библиотекой GnuTLS (такие сборки используются по умолчанию в Debian и Ubuntu). Сборки с OpenSSL не подвержены уязвимости.
Уязвимость типа use-after-free возникает в механизме передачи данных BDAT (chunked data transfer). Атака состоит из следующих шагов:
1. Злоумышленник устанавливает TLS-соединение с сервером.
2. В процессе передачи тела письма командой BDAT он отправляет уведомление
close_notify, инициируя преждевременное завершение TLS-сеанса.3. Сразу после этого, в том же TCP-соединении, отправляется один байт в открытом (незашифрованном) виде.
Это приводит к повреждению кучи (heap corruption), что открывает возможность для выполнения вредоносного кода.
Атака не требует аутентификации и может быть проведена через стандартный SMTP-порт.
Единственным надёжным способом защиты является обновление Exim до версии 4.99.3, в которой проблема устранена. Также необходимо следить за выходом обновлений от вашего дистрибутива, исправления уже доступны для Debian bullseye, bookworm и trixie.
Если установка обновления невозможна, в качестве временной меры можно отключить расширение CHUNKING. Для этого в конфигурационный файл Exim необходимо добавить строку:
chunking_advertise_hosts =
Это не устраняет уязвимость, а лишь блокирует один из векторов атаки. Сервер всё ещё может быть подвержен риску.
Linux / Линукс 🥸