
Русский хакер взломал почту президента Соединенных Штатов Америки Дональда Трампа!
Так могла бы быть озаглавлена статья в каком-нибудь новостном агрегаторе, но, конечно же, это далеко от истины, хотя письма от его имени (с домена POTUS*) я все же могу отправлять. Как такое могло произойти давайте разберем под катом.
Одним из самых распространенных методов обмана людей была и остается рассылка по электронной почте. Еще до индусских колл-центров и служб безопасности банков, в начале нулевых главным средством выманивания денег были африканские e-mail'ы, которые с сожалением сообщали о кончине вашего родственника, но завещавшего вам пару десятков миллионов долларов 🇷🇺.
Со временем, специалисты по ИБ разработали антифишинговые механизмы и ПО, которые блокировали входящую почту по распространенным паттернам, включая подозрительные слова. Именно поэтому, если вы вдруг не знали, фишинговые письма содержат грамматические ошибки - банально чтобы обойти защитные механизмы. Однако сейчас не об этом.
Главными критериями определения легальности письма являются 2 доменные записи: SPF и DMARС (есть еще DKIM, который отвечает за цифровую подпись писем, но о нем как-нибудь в другой раз).
Sender Policy Framework aka SPF — это запись со списком серверов и IP-адресов, с которых разрешается рассылать письма от имени домена. Если письмо пришло с отличного от записанного в SPF айпишника или домена - письмо помечается как подозрительное.
Domain-based Message Authentication, Reporting and Conformance aka DMARC — это политика, которая задаёт сценарий действий с письмами, которые признаны через SPF подозрительными: none - ничего не делать, quarantin - пропускать, но поместить в папку спам, и reject - отклонять.
Соответственно, если у домена в DNS не прописаны SPF и DMARС, то принимаемый mail-сервер не может проверить легальность отправления и не понимает, что с ним делать дальше кроме как пропустить.
Так и случилось в текущем примере: коммерческий домен POTUS.com не имеет соответствующей записи DMARC и любой желающий может отправлять письма от его имени, включая якобы действующего президента 🇺🇸 США.
К счастью, большие почтовые корпорации типа 📧 Google и ❤️ Яндекс, даже при отсутствии или неправильной конфигурации SPF и DMARC, научились отличать фишинг от реального письма. Однако ряд других почтовиков (не будем показывать пальцем) не только пропускают такие письма, но еще и подставляют аватарки (на основе фавиконки с домена), а под письмом пишут, что оно проверено "докторским" антивирусом.
Как же установить, что проверяемый домен подвержен такой атаке? Ранее я пользовался встроенной в Kali утилитой под названием spoofcheck (проверка на спуффинг), но она просто проверяет DNS записи и говорит возможно ли заспуфить проверяемый домен или нет.
Поэтому около года назад я сделал свою утилиту 🧠 HydrAttack PoC eMailSpoofer Module, которая проверяет домен на уязвимость (чекает DNS записи), и если так оно и есть - поднимается майл сервер со всеми необходимыми настройками и отправляется спуффинговое письмо. Особенностью моего ПО является то, что в письмо вложен Excel файл с макросом, который открывает калькулятор.
В общем, за год эксплуатации моя утилита показала свою работоспособность в боевых условиях: и на реальных проектах дала жару, и в рамках Баг Баунти программ от Bi.Zone я также заработал пару тысяч. Поэтому пользуйтесь, но помните, что с большой силой приходит и большая ответственность (с).
🧠 Обязательно поделись с теми, кому это может быть полезно 📱 Телеграм | 📝 Хабр | 💙 ВКонтакте | ⚡️Бустануть канал
*President of the United States - Президент Соединенных Штатов
















