SMTP Smuggling — nowa technika fałszowania wiadomości e-mail

Badacze z firmy SEC Consult opublikowali nową technikę oszustwa, której przyczyną są różnice w zgodności ze specyfikacją w różnych implementacjach protokołu SMTP. Zaproponowana technika ataku pozwala na podzielenie jednej wiadomości na kilka różnych wiadomości podczas jej przesyłania z jednego serwera SMTP na inny, który inaczej interpretuje sekwencję podziału wiadomości przesyłanych przez jedno połączenie. Metoda ta może być wykorzystywana do wysyłania fałszywych wiadomości w imieniu innych nadawców w serwisach pocztowych, które weryfikują oryginalnego nadawcę.

Problem wynika z faktu, że różne serwery SMTP różnie interpretują sekwencję zakończenia danych, co może prowadzić do podzielenia jednej wiadomości na kilka w ramach jednego sesji z serwerem SMTP. W specyfikacji określono sekwencję "\r\n.\r\n" (kropka otoczona znakami powrotu karetki i nowej linii) jako oznaczenie końca transmisji wiadomości. Po tej sekwencji mogą nastąpić polecenia do przesłania innej wiadomości bez przerywania połączenia. Niektóre serwery SMTP ściśle przestrzegają tej specyfikacji, ale inne, w celu zapewnienia zgodności z niektórymi rzadkimi klientami pocztowymi, traktują również takie sekwencje jak "\n.\n", "\n.\r\n", "\r\n.\n", "\r.\r", "\r\n\0.\r\n" i "\r\n\0.\r\n" jako separator.

Atak polega na tym, że do pierwszego serwer, który przetwarza tylko separator "\r\n.\r\n", wysyłana jest wiadomość, w której ciele znajduje się alternatywny separator, na przykład "\r.\r", po którym następują polecenia wysłania drugiej wiadomości. Ponieważ pierwszy serwer ściśle przestrzega specyfikacji, traktuje otrzymaną sekwencję jako jedną wiadomość. Jeśli następnie wiadomość zostanie przekazana do serwera tranzytowego lub serwera odbiorcy, który dodatkowo interpretuje sekwencję "\r.\r" jako separator, zostanie ona przetworzona jako dwa oddzielnie wysłane wiadomości (druga wiadomość może być wysłana w imieniu użytkownika, który nie został uwierzytelniony przez "AUTH LOGIN", ale na stronie odbiorcy będzie wyglądać jako poprawna).

SMTP Smuggling - nowa technika spoofingu wiadomości e-mail
SMTP Smuggling - nowa technika spoofingu wiadomości e-mail

Jako przykłady serwerów SMTP i usług, które akceptują alternatywne separatory, można wymienić Postfix, Sendmail, MS Exchange Online oraz Cisco Secure Email Gateway, a wśród usług pocztowych, które nie filtrują niepoprawnych separatorów w wiadomościach przy komunikacji z innymi serwerami, są GMX, iCloud oraz Microsoft Outlook.

Aby zablokować problem w Postfix, do wydań 3.8.1, 3.7.6, 3.6.10 i 3.5.20 dodano ustawienie „smtpd_forbid_unauth_pipelining”, które przerywa połączenie w przypadku użycia separatorów, które nie spełniają wymagań RFC 2920 oraz RFC 5321. Obecnie domyślnie to ustawienie jest wyłączone, ale planuje się jego aktywację domyślnie w gałęzi Postfix 3.9, która ma się pojawić na wiosnę 2024 roku. W gałęzi 3.9 wprowadzone zostanie również ustawienie smtpd_forbid_bare_newline, które zgłasza błąd przy użyciu jedynie znaku nowej linii („\n”) do oddzielania wierszy, co narusza RFC 5321.

W nadchodzącym wydaniu Sendmail 8.18.0.2 w celu ochrony przed atakiem w srv_features zaproponowano opcję ‘o’, która włącza przetwarzanie wyłącznie sekwencji „\r\n.\r\n”. Zaznacza się, że wyłączenie wsparcia dla alternatywnych separatorów może wpłynąć na działanie niektórych rzadkich klientów pocztowych, które nie w pełni spełniają specyfikację SMTP.

Źródło: opennet.ru

Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS 🔥 Kup solidny hosting stron z ochroną przed DDoS, serwery VPS VDS | ProHoster