Как распознавать фишинговые электронные письма

Как распознавать фишинговые электронные письма

Одним из самых популярных векторов атак и одним из самых популярных направлений социальной инженирии является фишинг. Это неудивительно – ведь у нас есть электронная почта и мы регулярно ею пользуемся.  В этой статье я расскажу о конкретных примерах мошенничества с фишинговыми письмами и покажу вам, как их искать в них «подарочки». Нучто ж приступим к разбору как распознавать фишинговые электронные письма

Заголовки

Текст письма состоит из трех частей: заголовка, тела (основной части) и часто вложения. Заголовок содержит информацию о маршрутизации сообщения. В нем также могут содержаться другие данные: тип содержимого, данные отправителей и получателей, дату получения, абсолютный адрес получателя, адрес почтового сервера и реальный почтовый адрес, с которого или на который было получено сообщение.

Значимые заголовки

Return-Path

Адрес электронной почты Return-Path содержит информацию о статусе доставки. Почтовый сервер читает содержимое заголовка Return-Path для обработки сообщений, которые не могут быть доставлены или возвращены отправителю. Сервер получателя использует это поле для идентификации «поддельных» сообщений электронной почты: он запрашивает все разрешенные IP-адреса, связанные с доменом отправителя, и сопоставляет их с IP-адресом автора сообщения. Если совпадений нет, письмо отправляется в спам.

Received

В этом поле отображается информация обо всех серверах, которые проходит электронная почта. Последняя запись — это исходный адрес отправителя.

Reply-To

Адрес электронной почты в этом поле используется для отправки ответного сообщения. В поддельных письмах он может отличаться от адреса отправителя.

Received-SPF

При помощи метода SPF (Sender Policy Framework) проверяется, были ли сообщения для определенного сайта получены от серверов, контролируемых владельцем этого домена. Это поле является подлинным, если оно имеет значение Pass

DKIM

DKIM (Domain Keys Identified Mail, email с домен­ными клю­чами) помечает исходящую почту зашифрованной подписью в заголовках, а почтовый сервер получателя расшифровывает ее с помощью общего открытого ключа, чтобы убедиться, что сообщение не было подделано при передаче.

X-Headers

Этот термин обозначает экспериментальные или расширенные заголовки. Обычно они добавляются поставщиками услуг электронной почты получателя. Такие поля, как X-FOSE-Spam и X-Spam-Score, используются для обнаружения спама.

Рас­смот­рим элек­трон­ное сооб­щение.

Как распознавать фишинговые электронные письма

Ис­ходные дан­ные в заголов­ке

  1. В приведенном выше примере вы можете видеть, что путь возврата не совпадает с адресом в поле «От». Это означает, что все недоставленные электронные письма будут возвращены на первый адрес.
  2. В поле Received («Получе­но») имя домена, с которо­го пись­мо было отправ­лено, — hiworks.co.kr (сайт для мас­киров­ки отпра­вите­ля элек­трон­ных писем), а не gki.com. Мож­но сде­лать вывод: пись­мо под­дель­ное. Кро­ме того, по резуль­татам про­вер­ки IP-адрес (142.11.243.65) не сов­пада­ет с адре­сом gki.com.
  3. Ад­рес отпра­вите­ля From отли­чает­ся от адре­са в поле Reply-To. Таким обра­зом, ответ на пись­мо будет нап­равлен в поч­товый ящик на домене @gmail.com, а не @gki.com.
  4. Зна­чение поля Received-SPF — neutral («ней­траль­но»); домен gki.com не дает в отно­шении IP-адре­са (142.11.243.65) ни раз­решения, ни зап­рета. Даль­нейшая про­вер­ка Whois выяви­ла, что этот домен не свя­зан с IP-адре­сом 142.11.243.65.
  5. Зна­чение поля DKIM — none («нет»). Это озна­чает, что элек­трон­ное пись­мо не под­писано.

По всем этим признакам, это сообщение является фальшивкой. Изъ­вле­чен­ные из письма идентифици­рованные данные необходимо внести в черный список.

Тело письма

Именно в теле письма находится главная часть электронного письма, которая предназначена для того, чтобы обмануть пользователя. Содержимое сообщения адресовано лично получателю и выглядит настолько правдоподобным, что жертва попадает в ловушку злоумышленника. 

Как распознавать фишинговые электронные письма

Фи­шин­говое пись­мо

Спамер утверждает, что является поставщиком медицинского страхования. В письме содержится информация о страховом счете от COVID-19, который, как утверждается, недавно заказала потерпевшая.

Фишинговое письмо на тему COVID-19 (продолжение)

Фи­шин­говое пись­мо (про­дол­жение)

Также есть строка в конце сообщения «Этот адрес электронной почты был проверен McAfee». Это делает электронное письмо как бы безопасным. 

Как распознавать фишинговые электронные письма

Однако, если мы наведем курсором на кнопку «Просмотреть подробности» мы увидим ссылку на службу OneDrivе. Теперь, чтобы перейти по этой ссылке нужно скопировать ее и открыть в браузере.

Как распознавать фишинговые электронные письма

Ска­чан­ный по ссыл­ке OneDrive файл HTML

Независимые клики из спама и фишинговых писем (hxxps: //1drv.ms/u/s! Ajmzc7fpBw5lrzwfPwIkoZRelG4D) лучше всего выполнять в изолированной среде. Если у вас этого нет, установите виртуальную машину или воспользуйтесь сервисом кросс-браузерного тестирования, например Browserling.

Ссыл­ка ведет на HTML-стра­ницу, которая редирек­тит нас на дру­гой сайт:

hxxps://selimyildiz.com.tr/wp-includes/fonts/greec/xls/xls/open/index.htm

Фальшивая страница входа в Office 365

Фаль­шивая стра­ница вхо­да в Office 365

Этот веб-сайт похож на онлайн-приложение Microsoft Excel, запрашивающее доступ к Office 365 для загрузки документа.

Панель администратора WordPress сайта selimyildiz.com.tr

Па­нель адми­нис­тра­тора WordPress сай­та selimyildiz.com.tr

Чтобы проверить подлинность веб-сайта, мы усекаем URL-адрес до уровня домена и загружаем его. Домен перенаправит нас на страницу входа в административную панель сайта WordPress. Фактически уже на этом этапе становится очевидно, что мы имеем дело с фишингом.

Как распознавать фишинговые электронные письма

Ин­форма­ция whois о сай­те selimyildiz.com.tr

Согласно whois, домен не был зарегистрирован Microsoft и соответствует общедоступному IP-адресу 2.56.152.159, который также не принадлежит Microsoft. Эти данные однозначно указывают на то, что открываемая по ссылке страница была создана мошенниками.

Попытка входа с произвольными реквизитами для аутентификации

По­пыт­ка вхо­да для аутен­тифика­ции

Чтобы проверить поведение сайта, вернитесь на страницу входа, введите произвольное имя пользователя и пароль и попробуйте загрузить учетную запись. Как и ожидалось, страница выдает ошибку, а указанные данные из формы благополучно покинули злоумышленники.

Фальшивый счет для привлечения внимания

Фаль­шивый счет для прив­лечения вни­мания

Теперь мы знаем, что это поддельный сайт. что делать дальше? Чтобы проверить функцию аутентификации, давайте повторно введем произвольные данные. Теперь они приняты! На этот раз браузер открывает счет-фактуру в формате PDF, который кажется подлинным от какой-то медицинской компании. Однако, когда жертва понимает, что это фальшивая учетная запись, ее имя пользователя и пароль уже будут украдены.

Вложения

Обычно пользователи отправляют документы Microsoft Office или файлы PDF в виде вложений электронной почты. Эти форматы часто используются киберпреступниками в качестве инструмента для загрузки вредоносных программ. Чтобы получить доступ к системе жертвы, злоумышленники внедряют в эти файлы элементы VBA (приложение Visual Basic) или JavaScript и распространяют их с помощью фишинговых писем.

В первой части этого раздела мы проанализируем подозрительный документ Word. Этот документ содержит макрос VBA. Иногда при открытии документа запускается макрос, но, начиная с Microsoft Office 2007, для запуска содержимого с макросами требуется разрешение пользователя. Чтобы обойти эту защиту, хакеры используют методы социальной инженерии. Они пытаются завоевать доверие жертвы, чтобы заставить ее без колебаний нажать кнопку «Разрешить редактирование».

Анализ документа Word

Наз­вание фай­ла: PR_Report.bin.

Ути­литы, которые нам понадо­бят­ся:

  • Oletools;
  • Yara;
  • Didier Stevens Suite;
  • Process Monitor;
  • Windows Network Monitor (Packet capture tool).

Шаг 1. Свойства файла

Прежде чем начать проверку файла, следует изучить его свойства. Чтобы получить эту информацию в Linux, используйте команду file.

В нашем слу­чае тип фай­ла — Microsoft Office Word.

Шаг 2. Применение правил Yara

Yara — это инструмент для идентификации и классификации вредоносных программ. Он сканирует файлы на основе подписей. Мы собираемся использовать два готовых правила Yara из программного пакета Didier Stevens Suite.

https://www.youtube.com/channel/UCj3BfM4TrydMgHGXAxIEReQ

https://www.youtube.com/channel/UCj3BfM4TrydMgHGXAxIEReQ

Правило Yara (maldoc.yara), поток которого показан выше, обнаружило, что магический номер файла OLE (D0 CF 11 E0) совпадает с идентификатором HEX (магическими байтами) документов Microsoft Office.

Магическое число — это важные данные, которым присвоены уникальные значения, которые не должны совпадать с другими значениями.

Так­же внут­ри фай­ла были обна­руже­ны подоз­ритель­ные вклю­чения — GetProcAddr и LoadLibrary.

Это правило Yara (contains_pe_file.yara) выявляет все встроенные PE-файлы. Затем оно сопос­тавляет приведенные выше строки в файле. MZ — это подпись PE-файла.

Шаг 3. Выделение содержимого документа с помощью oledump.py

Файл OLE содержит потоки данных. Oledump.py анализирует эти потоки для дальнейшего извлечения макросов или объектов из файла.

На рисун­ке выше в потоках 8, 9 и 15 вид­ны бук­вы M и O соот­ветс­твен­но. М озна­чает, что поток, воз­можно, содер­жит мак­рокод, О — объ­ект.

Шаг 4. Извлечение скрипта VB из макроса

Код в потоке 8 содер­жит метод killo. Это фун­кция для сох­ранения докумен­та с тем же име­нем фай­ла.

Поток 9 содержит много интересных данных. Функция Document_Open () представляет имена файлов 5C.pif и 6C.pif, причем 5C.pif копируется в 6C.pif с помощью функции FileCopy. В следующей части функция вызывает метод killo из другого модуля (поток 8).

Наконец, функция Document_Close () выполняет скрытую команду с помощью оболочки. Удалив маскировку, мы видим, что 6C.pif работает в фоновом режиме (с помощью метода vbHide); в то же время запрос ping отправляется на localhost.

shell cmd.exe /c ping localhost -n 100 && start Environ("Temp") & "\6C.pif", vbHide

Шаг 5. Извлечение файла из объекта OLE

Очевидно, что в документе есть встроенный файл, к которому можно получить доступ с помощью инструмента oleobj.

Как распознавать фишинговые электронные письма

Как указано выше, oleobj после извлечения объекта сохраняет файл в текущем рабочем каталоге. Выделенная часть изображения содержит информацию об исходном и временном пути, по которому файл сохраняется в системе после открытия документа.

Шаг 6. Получение статической информации из извлеченного файла

Как распознавать фишинговые электронные письма

Итак, мы извлекли исполняемый файл PE32 для Windows. Чтобы подтвердить этот вывод, запустите инструмент pecheck.py, чтобы найти заголовки PE внутри файла.

Шаг 7. Анализ поведения

Давайте настроим 32-битную виртуальную машину Windows 7, изменим расширение файла на EXE. Перед его запуском вам необходимо включить инструменты Apate DNS и Windows Network Monitoring.

DNS-запросы домена C&C, зарегистрированные Apate DNS

DNS-зап­росы домена C&C, зарегис­три­рован­ные Apate DNS

Сетевой трафик 5C.exe, зарегистрированный при попытке обмена данными с C&C-сервером

Се­тевой тра­фик 5C.exe, зарегис­три­рован­ный при попыт­ке обме­на дан­ными с C&C-сер­вером

Согласно результатам анализа с использованием DNS Apate и Microsoft Network Monitoring, файл создал процесс под названием 5C.exe и предпринял несколько попыток подключения к различным C&C серверам.

Изменения в реестре, зафиксированные Process Monitor

Из­менения в реес­тре, зафик­сирован­ные Process Monitor

Согласно Process Monitor, процесс 5C.exe внес несколько изменений в ключи реестра, связанные с настройками подключения к Интернету. Он отключил прокси-сервер браузера, установив 0 для ключа ProxyEnable и 09 для 9-байтового ключа SavedLegacySettings. В результате браузер начал автоматически определять настройки Интернета напрямую, без прокси.

Таким образом, документ Word сначала запускает макрос VBA, сохраняет и запускает исполняемый файл, создает новый процесс, взаимодействует с серверами C&C и вносит несанкционированные изменения в реестр. Этой информации достаточно, чтобы идентифицировать документ как вредоносный. Затем мы можем провести более подробный анализ — отладить исполняемый файл или изучить дамп процесса, чтобы узнать больше о поведении файла.

Документ PDF

Документ PDF — это набор объектов, которые описывают, как страницы отображаются в файле.

Что­бы побудить поль­зовате­ля ска­чать или открыть документ PDF, такой файл чаще все­го рас­сыла­ют в элек­трон­ных пись­мах. В момент откры­тия документ PDF обыч­но запус­кает JavaScript в фоновом режиме. Этот скрипт может вос­поль­зовать­ся уяз­вимостью в при­ложе­нии Adobe PDF Reader или незамет­но сох­ранить встро­енный исполня­емый файл.

Файл PDF состоит из четырех компонентов. Это заголовок, тело (основная часть), ссылки и трейлер (конечный тег).

  1. За­голо­вок содер­жит информа­цию о вер­сии докумен­та и дру­гую слу­жеб­ную информа­цию.
  2. Те­ло PDF содер­жит раз­личные объ­екты (объ­екты сос­тоят из потоков, которые исполь­зуют­ся для хра­нения дан­ных).
  3. Таб­лица перек­рес­тных ссы­лок ука­зыва­ет на каж­дый объ­ект.
  4. Трей­лер ука­зыва­ет на таб­лицу перек­рес­тных ссы­лок.

Проанализируем для примера файл Report.pdf.

Инс­тру­мен­ты:

Шаг 1. Просканируем документ PDF с помощью PDFiD

PDFiD является составной частью пакета Didier Stevens Suite. Он сканирует PDF-документ, используя список строк, чтобы обнаружить элементы JavaScript, встроенные файлы, действия, предпринятые при открытии документов, и подсчитать количество определенных строк в PDF-файле.

Как распознавать фишинговые электронные письма

Как вид­но из резуль­татов ска­ниро­вания, PDFiD выявил в фай­ле Report.pdf нес­коль­ко объ­ектов, потоков, эле­мен­тов JS, JavaScript и OpenAction. Наличие таких эле­мен­тов озна­чает, что документ PDF содер­жит скрип­ты JavaScript или Flash.

Embedded file / элемент указывает на наличие других форматов в PDF-файлах. Элементы / OpenAction, AA, / Acroform сообщают нам, что при открытии или просмотре PDF-файла выполняется какое-то автоматическое действие.

Дан­ные внут­ри объ­екта называют потоками.

Шаг 2. Содержимое объектов

Итак, мы обнаружили, что внутри файла PDF есть JavaScript. Это будет отправной точкой анализа. Чтобы найти косвенный объект JavaScript, запустите инструмент pdf-parser.py.

Как распознавать фишинговые электронные письма

По результатам сканирования JavaScript запускает вирусный файл каждый раз при открытии PDF-файла. Итак, наш следующий шаг — извлечь этот файл.

Шаг 3. Извлечение встроенного файла с помощью peepdf

Peepdf — это инструмент Python, который содержит все компоненты, необходимые для синтаксического анализа PDF. Чтобы воспользоваться его возможностями, введите команду peepdf --i filename.pdf. Параметр -i включает интерактивный режим скрипта.

Как распознавать фишинговые электронные письма

Что­бы узнать боль­ше, смот­ри справ­ку (опция help).

Как распознавать фишинговые электронные письма

Как распознавать фишинговые электронные письма

Результат анализа peepdf указывает, что объект 14 имеет встроенный файл. При ближайшем рассмотрении мы увидим, что он указывает на объект 15; а объект 15 указывает на объект 16. Наконец, мы обнаруживаем признаки файлового вируса внутри объекта 17. Судя по содержимому файла PDF, в нем есть только один поток, который также указывает на объект 17. Итак, объект 17 — это поток со встроенным в него файлом.    

Как распознавать фишинговые электронные письма

Внутри потока 17 содержится сиг­натура файла, которая начинается с MZ, и шестнадцатеричное (hex) значение, начинающееся с 4d 5a. В этом случае это будут признаки, указывающие на исполняемый файл PE

Как распознавать фишинговые электронные письма

Да­лее мы сох­раним поток как исполня­емый файл virus.exe.

Шаг 4. Анализ поведения

Те­перь запус­тим этот файл в вир­туал­ке под Windows 7 32-bit.

Process Explorer отображает процессы, созданные файлом virus.exe

Process Explorer отоб­ража­ет про­цес­сы, соз­данные фай­лом virus.exe

Как вид­но в окне Process Explorer, virus.exe соз­дал два подоз­ритель­ных про­цес­са (zedeogm.exe, cmd.exe), которые были оста­нов­лены пос­ле запус­ка.

Компонент Process Monitor зарегистрировал изменения в системе, внесенные virus.exe

Ком­понент Process Monitor зарегис­три­ровал изме­нения в сис­теме, вне­сен­ные virus.exe

Согласно Process Monitor, файл zedeogm.exe был сохранен в запущенных процессах. Затем он изменил правило брандмауэра Windows. Следующим шагом был запуск файла WinMail.exe. После этого программа запустила cmd.exe для выполнения файла tmpd849fc4d.bat и остановила процесс.

Таким образом, мы собрали достаточно доказательств того, что этот PDF-файл является вредоносным. Затем вы можете принять дополнительные превентивные меры — например, выполнить двоичную отладку и проверить память извлеченных IOC на предмет других угроз.

Заключение

Здесь мы подробно разобрали, как найти признаки фишинга в электронном письме, а также как это может помочь избежать нежелательных угроз. Также были выявлены зоны поиска этих признаков. Нам стало известно об URL-адресах, которые злоумышленники скрывают в тексте письма, а также о том, что необходимо предпринять для их проверки.  

Какие меры предпринять, чтобы обезопасить себя:

  • Не стоит доверять отправителю электронного письма.
  • В случае, если ты не знаешь, кто твой отправитель, не переходи по ссылкам и не открывай вло­жения.
  • В большинстве случаев злоумышленники используют произвольные доменные имена. Не поленитесь проверить адрес сайта на наличие «опечатки». Это может быть сайт, который создан специально для того, чтобы ввести вас в заблуждение.
  • Сначала проверь происхождение сайта, прежде чем вписать туда свои личные данные – имя пользователя и его почтовый адрес, финансовые данные и другие.
  • А если у тебя появились сомнения в том, что ты вводишь реквизиты доступа на подозрительном сайте, немедленно смени пароль.

 

 

 

Click to rate this post!
[Total: 0 Average: 0]

Leave a reply:

Your email address will not be published.