CVE: CVE-2026-93012
Продукт: Debian
Дата публикации: 21.09.2026
Критичность: CRITICAL
CVSS: 9.8 (3.1)
EPSS: 0,22%; процентиль 13,02%
CISA KEV: нет подтверждения в каталоге CISA KEV
Краткое описание
Уязвимость CVE-2026-93012 затрагивает Email::Sender::Transport::Sendmail версии ниже 2.602 для Perl. На MSWin32 envelope sender и все получатели попадают в одну строку команды, которую open() передаёт оболочке. В Debian статус уязвимости для всех указанных релизов отмечен как resolved, а версии исправления указаны в Debian Security Tracker.
Основные характеристики
Риск состоит в том, что управляемый адрес в заголовках письма может привести к выполнению команд от имени процесса, отправляющего письмо. Вектор не требует локального доступа и пользовательского взаимодействия, поэтому при наличии уязвимой версии пакета на Windows-платформе последствия могут быть серьёзными.
- Тип ошибки: CWE-78 — command injection
- CVSS v3.1:
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H, 9.8 CRITICAL
- Условие эксплойта: контроль над адресом в заголовках To, Cc или From при отправке через уязвимый транспорт sendmail на MSWin32
- Факт эксплуатации: не подтверждён доступными источниками
- EPSS: 0,22% (процентиль 13,02%)
Какие продукты и версии затронуты
В Debian Security Tracker для CVE-2026-93012 указан один пакет: libemail-sender-perl. Все четыре релиза Debian имеют статус resolved.
- bookworm: исправление в версии
2.600-1
- forky: исправление в версии
2.601-1
- sid: исправление в версии
2.601-1
- trixie: исправление в версии
2.601-1
Причина уязвимости
В Email::Sender::Transport::Sendmail на MSWin32 envelope sender и все получатели собираются в одну строку команды, которую open() передаёт оболочке.
На остальных платформах используется list form, который запускает sendmail напрямую без участия оболочки. Это различие в механизме вызова создаёт условие для произвольного выполнения команд: если адрес содержит символы, интерпретируемые оболочкой, они попадают в команду.
Когда вызывающий код не передаёт envelope явно, Email::Sender::Simple берёт получателей из заголовков To и Cc, а отправителя из заголовка From. Контроль над этими заголовками даёт доступ к строке команды.
Как работает атака
Атака строится на том, что адрес в заголовках письма становится частью команды, передаваемой оболочке.
На MSWin32 envelope sender и каждый recipient добавляются в одну строку. open() передаёт эту строку shell-интерпретатору. Если адрес содержит последовательности, которые оболочка выполняет как команды, они запускаются от имени процесса, отправляющего письмо.
В Debian пакет libemail-sender-perl распространяется как часть системы Perl. Уязвимость проявляется только при работе на MSWin32, потому что на других платформах используется list form и sendmail вызывается напрямую.
Условия успешной эксплуатации
Для успешной эксплуатации необходимы следующие условия:
- система работает на Windows (MSWin32)
- установлен пакет libemail-sender-perl версии ниже исправленной
- процесс отправляет письмо через Email::Sender::Transport::Sendmail
- атакующий контролирует адрес в заголовках To, Cc или From письма
- оболочка интерпретирует строку команды и выполняет вложенные последовательности
Возможный сценарий атаки
Сценарий предполагает отправку письма через Perl-приложение, использующее Email::Sender.
Атакующий формирует адрес в заголовке To или Cc так, чтобы он содержал последовательность, которая при попадании в строку команды на MSWin32 запускает произвольную команду. При отправке письма open() передаёт собранную строку оболочке, и команда выполняется от имени процесса.
Если envelope не указан явно, Email::Sender::Simple подставит адреса из заголовков To, Cc и From. Это расширяет поверхность атаки: достаточно контролировать один из этих заголовков.
Есть ли публичный эксплойт
В предоставленных источниках нет отдельного раздела с публичным эксплойтом, PoC или подтверждённой эксплуатацией.
Доступны ссылки на патч в репозитории Email-Sender и changelog версии 2.602, а также сообщение в списке oss-security. Эти материалы описывают исправление и механику ошибки, но не содержат готового эксплойта или подтверждённого сценария атаки.
Отсутствие сведений об эксплуатации не означает, что она невозможна. Механика позволяет контролировать адрес в заголовках письма, что при наличии уязвимой версии на MSWin32 ведёт к выполнению команд.
Признаки эксплуатации
Специфичных IOC для CVE-2026-93012 в предоставленных источниках нет.
Неспецифичные точки контроля:
- незапланированные процессы, запущенные из Perl-скриптов или почтовых агентов
- аномальные вызовы оболочки из процессов, отправляющих почту
- неожиданные изменения файлов, созданных процессом отправки писем
- исходящие соединения из процесса, работающего под пользователем почтового сервера
Как обнаружить атаку
Для обнаружения атаки можно использовать следующие методы:
- мониторинг вызовов open() и system() в Perl-приложениях, работающих с почтой
- анализ логов почтовых агентов на аномальные адреса в заголовках To, Cc и From
- проверка процессов, запущенных из Perl-скриптов, на наличие неожиданных команд
- аудит прав доступа к файлам, создаваемым процессами отправки почты
Как проверить свою версию
Для проверки версии пакета libemail-sender-perl в Debian используйте следующие команды:
Bash:
cat /etc/debian_version
Bash:
cat /etc/os-release
Bash:
apt-cache policy <имя-пакета>
Замените
<имя-пакета> на libemail-sender-perl.
Bash:
dpkg-query -W -f='${Package} ${Version}\n' <имя-пакета>
Замените
<имя-пакета> на libemail-sender-perl. Команда покажет установленную версию пакета и позволит сравнить её с исправленной версией из Debian Security Tracker.Исправление
Исправление доступно для всех релизов Debian. Обновите пакет libemail-sender-perl до версии, указанной в Debian Security Tracker.
- bookworm: обновите до
2.600-1
- forky: обновите до
2.601-1
- sid: обновите до
2.601-1
- trixie: обновите до
2.601-1
Команда обновления:
Bash:
apt-get update && apt-get upgrade libemail-sender-perl
После обновления проверьте версию пакета и убедитесь, что она соответствует исправленной.
Дополнительная ссылка на статус уязвимости: Debian Security Tracker.
Временные меры защиты
Пока обновление не выполнено, можно применить следующие временные меры:
- ограничить отправку писем только доверенными процессами
- проверить заголовки To, Cc и From на наличие аномальных адресов перед отправкой
- использовать list form вместо строковой команды, если это возможно в конфигурации приложения
- изолировать процессы отправки почты от критичных систем
Эти меры снижают вероятность эксплуатации, но не устраняют саму уязвимость. Основной способ защиты — обновление пакета до исправленной версии.
Как проверить устранение уязвимости
После обновления проверьте версию пакета и статус уязвимости.
Bash:
dpkg-query -W -f='${Package} ${Version}\n' libemail-sender-perl
Сравните полученную версию с исправленной из Debian Security Tracker. Если версия соответствует, уязвимость устранена.
Также можно проверить статус в Debian Security Tracker: CVE-2026-93012.
Вывод
CVE-2026-93012 — критическая уязвимость в libemail-sender-perl, связанная с выполнением команд через адрес в заголовках письма на MSWin32. В Debian все релизы отмечены как resolved, и исправление доступно для bookworm, forky, sid и trixie.
Администратору необходимо обновить пакет до указанной версии и проверить результат. Для систем, работающих на Windows, важно контролировать заголовки писем и ограничивать отправку доверенными процессами.
Официальные источники
История обновлений статьи
- 23.09.2026 — Опубликована первая версия материала.
