Кибербезопасность – это постоянно меняющийся ландшафт. Старые угрозы эволюционируют, а новые появляются. Одна из таких угроз – SMTP smuggling. Это яркое напоминание о том, как важно оставаться в курсе угроз кибербезопасности и методов защиты от кибератак. Что такое SMTP smuggling и как это работает?
Что такое SMTP?
Simple Mail Transfer Protocol (SMTP) – это сетевой протокол TCP/IP, который облегчает передачу электронных писем между различными компьютерами и серверами. Он настолько распространен, что SMTP используется даже в почтовых клиентах Gmail, Outlook, Yahoo и Apple.
Итак, что именно представляет собой SMTP в электронной почте? После того как письмо написано в почтовом клиенте, например, Microsoft Outlook, оно доставляется на SMTP-сервер, который считывает домен получателя, чтобы найти соответствующий сервер электронной почты для доставки письма. Если процесс проходит гладко, SMTP-сервер в домене получателя обрабатывает письмо и либо доставляет его, либо использует SMTP для пересылки через другую сеть перед доставкой.
Важно отметить, что возможности SMTP по проверке подлинности всегда были ограничены. Таким образом, спуфинг в электронной почте стал серьезной проблемой. Злоумышленникам достаточно было выбрать подходящий инструмент – это мог быть другой почтовый клиент, скрипт или утилита, – который позволял им выбрать имя отправителя. Затем они совершали целевые атаки с помощью электронных писем, выдавая себя за доверенного отправителя и убеждая совершить определенное действие, например перейти по фишинговым ссылкам или загрузить файлы, зараженные вредоносным ПО.
Для устранения этой уязвимости (CVE-2023-51766) было разработано несколько защитных мер, в том числе:
- Sender Policy Framework (SPF). С помощью DNS-записей этот фреймворк указывает принимающим почтовым службам, какие IP-адреса имеют право отправлять электронные письма с указанного домена.
- Domain Key Identified Mail (DKIM). С помощью секретного ключа, хранящегося на сервере отправителя, исходящие электронные письма снабжаются цифровой подписью, что позволяет серверам-получателям проверять отправителей, используя открытый ключ сервера-отправителя.
- Domain-based Message Authentication, Reporting, and Conformance (DMARC). Этот протокол проверяет домен отправителя письма в заголовке From на соответствие SPF и (или) DKIM – если есть несоответствие, проверка DMARC не проходит. Однако этот протокол используется далеко не везде.
Что такое SMTP-сервер?
В компьютерных сетях SMTP-сервер – это почтовый сервер, который может отправлять и получать электронные письма по протоколу SMTP. Как правило, эти серверы используют протокол TCP на порте 25 или 587 – номера указывают серверу, какие именно процессы следует задействовать при работе с сообщениями. Для отправки письма клиенты электронной почты напрямую соединяются с SMTP-сервером поставщика услуг электронной почты. На SMTP-сервере работает несколько различных программ:
- Mail Submission Agent (MSA). Получает сообщения от почтового клиента.
- Mail Transfer Agent (MTA). Передает электронные письма на следующий сервер – на этом этапе сервер может инициировать DNS-запрос для DNS-записи почтового обмена (MX) с доменом получателя.
- Mail delivery agent (MDA). Получает электронные письма и хранит в папке входящих сообщений получателя.
Что такое SMTP Smuggling?
SMTP smuggling – это тип кибератаки, при котором подделываются адреса электронной почты, из-за чего создается впечатление, что сообщения отправлены из легитимных источников. Конечная цель этих кибератак – провести фишинговую атаку и вынудить цель совершить определенное действие, например перейти по вредоносной ссылке, открыть зараженное вложение или даже сообщить конфиденциальную информацию или отправить деньги.
При этом используются различия между тем, как серверы исходящей и входящей электронной почты обрабатывают кодовые последовательности окончания данных. Цель – с помощью «скрытых» SMTP-команд обмануть сервер получателя и заставить его иначе интерпретировать конец сообщения, чтобы оно выглядело как два отдельных сообщения.
В чем заключается принцип SMTP Smuggling?
Для осуществления атак злоумышленники «контрабандой» передают неоднозначные SMTP-команды, чтобы нарушить целостность связи с почтовым сервером. Это похоже на принцип атак типа HTTP request smuggling. Если говорить более конкретно, SMTP-серверы традиционно указывают на конец данных сообщения с помощью кода <CR><LF>.<CR><LF> или \r\n.\r\n. Эти сокращения означают «возврат каретки» и «перевод строки» соответственно и являются стандартными разделителями текста.
Изменив эту последовательность кода, злоумышленники могут изменить представление сервера о том, где заканчиваются данные сообщения. Если они могут сообщить исходящему серверу, что сообщение заканчивается в одной точке, а входящему серверу – что сообщение заканчивается позже, это создаст область для «контрабанды» дополнительных данных.
Обычно такие поддельные письма используются в целенаправленных фишинговых атаках. Особенно уязвимы к атакам SMTP smuggling организации, поскольку при этом легче подделать их домены и использовать социальную инженерию для создания фишинговых писем или целевого фишинга.
Как избежать атак типа SMTP Smuggling
Хотя разработчики наиболее популярных и известных почтовых серверов Postfix, Exim и Sendmail выпустили исправления и обходные пути для борьбы с такими атаками, можно предпринять еще несколько шагов, чтобы свести эту угрозу к минимуму.
- Проводите регулярные проверки безопасности инфраструктуры организации, чтобы отслеживать возможные векторы атак и уязвимости.
- Проверьте ваше программное обеспечение для маршрутизации электронной почты – если в нем найдена уязвимость, обновите его до последней версии и используйте настройки, запрещающие несанкционированную конвейеризацию.
- Пользователям почтовых продуктов Cisco рекомендуется вручную изменить стандартное значение параметра CR and LF Handling на Allow вместо Clean, чтобы сервер интерпретировал и доставлял только те письма, в которых для указания на конец данных используются последовательности <CR><LF>.<CR><LF>.
- Запретите использование <LF> без <CR> в коде.
- Отключите удаленные SMTP-клиенты, отправляющие пустые строки.
- Проводите для сотрудников регулярные тренинги по безопасности. Помимо прочего, объясните им, что важно проверять адрес электронной почты отправителя, прежде чем предпринимать какие-либо дальнейшие действия.
Как выглядит спуфинг с помощью SMTP в электронной почте?
Чтобы избежать угрозы SMTP smuggling, полезно знать, как может выглядеть поддельное письмо. Поддельное письмо может иметь несколько форм:
- Подмена легального домена. Это простая подмена домена организации в заголовке письма From («отправитель»). Именно это пытаются обнаружить методы аутентификации SPF, DKM и DMARC. Организации должны соответствующим образом настраивать аутентификацию почты, чтобы свести к минимуму возможность подмены их домена злоумышленниками.
- Подмена отображаемого имени. В этом случае подменяется имя отправителя, указанное перед адресом электронной почты в заголовке From; часто используется настоящее имя сотрудника компании. Большинство почтовых клиентов автоматически скрывают адрес электронной почты отправителя и показывают только отображаемое имя, поэтому пользователям следует проверять адрес, если письмо кажется подозрительным. Существует несколько разновидностей такой атаки, в том числе Ghost Spoofing и AD Spoofing. Kaspersky Secure Mail Gateway (KSMG) обеспечивает мощную защиту от атак типа AD Spoofing путем проверки подлинности отправителя, а также соответствие сообщений установленным стандартам аутентификации электронной почты.
- Подмена домена на похожий (Lookalike). Этот метод сложнее. Злоумышленнику приходится зарегистрировать домен, похожий на домен целевой организации, настроить почту, подписи DKIM/SPF и аутентификацию DMARC. Опять же, существует несколько типов этой формы спуфинга, в том числе Primary Lookalike (например, используется неправильное написание домена существующей организации) и Unicode Spoofing (замена ASCII-символа в доменном имени на похожий символ из Unicode). KSMG помогает организациям защититься от спуфинга типа lookalike путем проверки личности отправителя, что снижает риск получения поддельных писем.
Решение Kaspersky Endpoint Security получило звание «Продукт года» по версии AV Comparatives https://www.av-comparatives.org/tests/summary-report-2023/.
Статьи и ссылки по теме:
- Что такое спуфинг – определение и описание
- Что такое целевой фишинг?
- Как распознать фишинговые письма и избежать их получения
Продукты и решения: