SMTP Smuggling — нова техника за спуфинг на имейл съобщения

Изследователи от компания SEC Consult публикуваха нова техника за спуфинг, причинена от различия в следването на спецификацията в различни реализации на протокола SMTP. Предложената техника на атака позволява разделянето на едно съобщение на няколко различни съобщения при неговото предаване от изходящия SMTP сървър на друг SMTP сървър, който тълкува последователността за разделяне на писмата, предавани през едно съединение, по различен начин. Методът може да се използва за изпращане на фалшиви писма от името на други подателите в пощенски услуги, които проверяват изходния подател.

Проблемът е причинен от това, че различните SMTP сървъри интерпретират различно последователността на завършването на данните, което може да доведе до разделянето на едно писмо на няколко в рамките на една сесия с SMTP сървъра. В спецификацията за маркиране на края на предаването на писмото е определена последователността «\r\n.\r\n» (точка, оградена с символи за връщане на каретката и нов ред). След тази последователност могат да следват команди за предаване на друго писмо без прекъсване на съединението. Някои SMTP сървъри строго следват предписанията, но други, за да осигурят съвместимост с някои редки пощенски клиенти, третират и такива последователности като «\n.\n», «\n.\r\n», «\r\n.\n», «\r.\r», «\r\n\0.\r\n» и «\r\n\0.\r\n».

Атаката се състои в това, че на първия сървър, който обработва само разделителя «\r\n.\r\n», се изпраща писмо, в тялото на което присъства алтернативен разделител, например, «\r.\r», след който следват команди за изпращане на второто съобщение. Тъй като първият сървър строго следва спецификацията, той обработва получената последователност като едно писмо. Ако след това писмото бъде изпратено на транзитен сървър или сървър на получателя, който допълнително възприема последователността «\r.\r» като разделител, то ще бъдат обработени като две отделно изпратени писма (второто писмо може да бъде изпратено от името на потребител, който не е автентикиран чрез «AUTH LOGIN», но да изглежда коректно от страната на получателя).

SMTP Smuggling - нова техника за спуфинг на имейли
SMTP Smuggling - нова техника за спуфинг на имейли

Примери за SMTP сървъри и услуги, които позволяват алтернативни разделители, са Postfix, Sendmail, MS Exchange Online и Cisco Secure Email Gateway. Сред пощенските услуги, които не филтрират некоректни разделители от имейлите при свързване с други сървъри, са GMX, iCloud и Microsoft Outlook.

За блокиране на проблема в Postfix в версиите 3.8.1, 3.7.6, 3.6.10 и 3.5.20 е добавена настройка 'smtpd_forbid_unauth_pipelining', която прекъсва връзката, когато се използват разделители, които не отговарят на изискванията на RFC 2920 и RFC 5321. В момента по подразбиране тази настройка е изключена, но плановете са да бъде активирана по подразбиране в версия Postfix 3.9, която се очаква през пролетта на 2024 година. В версия 3.9 ще бъде включена и настройката smtpd_forbid_bare_newline, която извежда грешка при използване само на символа за нов ред ('\n') за разделяне на редовете, което нарушава RFC 5321.

В предстоящото издание на Sendmail 8.18.0.2 за защита от атака в srv_features е предложена опцията 'o', която включва обработката само на последователността '\r\n.\r\n'. Посочва се, че деактивирането на поддръжката на алтернативни разделители може да наруши работата на някои редки пощенски клиенти, които не съвпадат напълно със спецификацията на SMTP.

Източник: opennet.ru

Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster