Иног­да пос­ле хакер­ской ата­ки иссле­дова­телям оста­ется нес­коль­ко ском­про­мети­рован­ных компь­юте­ров и дамп сетево­го тра­фика, иссле­дуя который мож­но попытать­ся вос­ста­новить хро­ноло­гию событий. Имен­но эту ситу­ацию эму­лиру­ет лабора­тор­ная работа BSidesJeddah-Part1 с ресур­са CyberDefenders, решение которой мы сегод­ня под­робно раз­берем. Мы научим­ся ана­лизи­ровать сетевой тра­фик, извле­кать арте­фак­ты и вос­ста­новим кар­тину взло­ма.

По сце­нарию хакер­ская груп­пиров­ка исполь­зовала целевой фишинг и получи­ла дос­туп к информа­цион­ному ресур­су орга­низа­ции. Наша задача — рас­сле­довать инци­дент и вос­ста­новить его сце­нарий.

По резуль­татам необ­ходимо отве­тить на воп­росы, но я покажу лишь сам про­цесс решения. Ты смо­жешь пов­торить его самос­тоятель­но, что­бы луч­ше разоб­рать­ся и зак­репить матери­ал.

Для начала заг­рузим файл ар­хива с арте­фак­тами и прис­тупим к их иссле­дова­нию. В архи­ве сох­ранен сетевой тра­фик ском­про­мети­рован­ного хос­та и пра­вила Suricata.

 

Используемые утилиты

  1. Wireshark — ана­лиза­тор сетевых про­токо­лов.
  2. Brim — ана­лиза­тор сетево­го тра­фика.
  3. Oleid — ути­лита для ана­лиза OLE-фай­лов.
  4. Scdbg — ути­лита для ана­лиза шелл‑кода, пос­тро­енная на осно­ве биб­лиоте­ки для эму­ляции libemu.
  5. IDA Pro — инте­рак­тивный дизас­сем­блер, исполь­зуемый для реверс‑инжи­нирин­га.
 

Анализ сетевого трафика

Прис­тупим к ана­лизу сетево­го тра­фика. Иссле­довать дамп мы будем в прог­рамме Wireshark. Заг­рузим файл из архи­ва, для это­го перей­дем на вклад­ку «Файл → Открыть».

Ана­лизи­руя пакеты сетево­го дам­па, мож­но заметить, что, начиная с пакета 56, идут мно­жес­твен­ные TCP-обра­щения к раз­личным пор­там с IP-адре­са 192.168.112.128.

Множественные сетевые соединения
Мно­жес­твен­ные сетевые соеди­нения

Зло­умыш­ленник с IP-адре­са 192.168.112.128 ска­ниру­ет пор­ты сетево­го ресур­са 192.168.112.139, что­бы най­ти откры­тые. Рас­смот­рим этот про­цесс более деталь­но.

Процесс TCP-сканирования
Про­цесс TCP-ска­ниро­вания

На рисун­ке выше пред­став­лено трех­сто­рон­нее TCP-соеди­нение меж­ду сетевы­ми адре­сами 192.168.112.128 и 192.168.112.139 по пор­ту 25. Как работа­ет TCP-рукопо­жатие, опи­сано в базе зна­ний Storm Wall, опи­сание фла­гов TCP-пакетов мож­но най­ти на сай­те Geeksforgeeks.

По­иск откры­того пор­та при TCP-ска­ниро­вании про­исхо­дит сле­дующим обра­зом. Источник 192.168.112.128 отпра­вил SYN-пакет получа­телю 192.168.112.139. Получа­тель отве­тил TCP-фла­гами SYN и ACK (соеди­нение уста­нов­лено). Далее источник отправ­ляет ACK-пакет и сле­дом завер­шает соеди­нение фла­гом RST. Это сви­детель­ству­ет о том, что порт 25 ресур­са 192.168.112.139 открыт. В слу­чае зак­рытого пор­та пос­ле SYN-пакета получа­тель отправ­ляет RST-, ACK-фла­ги пакета TCP.

Рас­смот­рим TCP-пакет с фла­гами SYN и ACK. Для это­го откро­ем его, наж­мем на него дваж­ды, а затем рас­кро­ем вклад­ку Transmision Control Protocol и вклад­ку Flags.

Флаги SYN и ACK пакета TCP
Фла­ги SYN и ACK пакета TCP

Мы выяс­нили, что при откры­том пор­те источник ска­ниро­вания отправ­ляет пакет с фла­гами SYN и ACK. Най­дем эти пакеты и выяс­ним количес­тво откры­тых пор­тов на ата­куемой машине, для это­го отфиль­тру­ем сетевой тра­фик.

В поле «Дис­плей­ный филь­тр» ути­литы Wireshark вво­дим сле­дующие дан­ные:

tcp.flags == 0x12
Отфильтрованные пакеты сетевого дампа
От­филь­тро­ван­ные пакеты сетево­го дам­па

Про­ана­лизи­ровав дамп сетево­го тра­фика, мы выяс­нили сле­дующее. 1 октября 2021 года в 12:31 зло­умыш­ленник с IP-адре­сом 192.168.112.128 начал ска­ниро­вать сетевой ресурс 192.168.112.139. MAC-адрес ата­куемой машины — 00:0C:29:B7:CA:91. В резуль­тате ска­ниро­вания выяс­нилось, что на ата­куемой машине откры­ты семь пор­тов: 25, 110, 135, 139, 143, 445, 587.

Рас­смот­рим даль­нейшие дей­ствия зло­умыш­ленни­ка, про­дол­жив ана­лизи­ровать дамп сетево­го тра­фика.

В 12:31:54 зло­умыш­ленник отправ­ляет элек­трон­ное сооб­щение на сер­вер SMTP (25-й порт сетево­го ресур­са 192.168.112.139). Начиная с пакета 2645, мож­но уви­деть вза­имо­дей­ствие по про­токо­лу SMTP (порт 25), пол­ный спи­сок команд про­токо­ла при­веден в бло­ге.

Пос­тро­им TCP-поток и раз­берем коман­ды про­токо­ла SMTP и заголо­вок сооб­щения, для это­го наж­мем пра­вой кноп­кой мыши над­пись «Сле­довать» и выберем в кон­текс­тном меню пункт «Поток TCP». Номер TCP-потока с SMTP-вза­имо­дей­стви­ем — 1183.

SMTP-взаимодействие
SMTP-вза­имо­дей­ствие

Ко­ман­да EHLO исполь­зует­ся для пред­став­ления кли­ента сер­веру SMTP. Имя кли­ента — kali, сер­вер воз­вра­щает ста­тус 250, соеди­нение уста­нов­лено успешно.

По­ле MAIL FROM ука­зыва­ет отпра­вите­ля сооб­щения: support@cyberdefenders.org, зна­чение RPCT TO опре­деля­ет получа­теля сооб­щения: joshua@cyberdefenders.org. Далее идет коман­да DATA, которая исполь­зует­ся для переда­чи информа­цион­ной час­ти сооб­щения. Рас­смот­рим заголо­вок сооб­щения. В заголов­ке Date ука­заны дата и вре­мя отправ­ки пись­ма: 12:31:54 1 октября 2021 года. В заголов­ке X-Mailer — прог­рам­мное обес­печение, с помощью которо­го зло­умыш­ленник отпра­вил сооб­щение: sendMail вер­сии 1.56.

Содержимое письма
Со­дер­жимое пись­ма

Продолжение доступно только участникам

Вариант 1. Присоединись к сообществу «Xakep.ru», чтобы читать все материалы на сайте

Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», позволит скачивать выпуски в PDF, отключит рекламу на сайте и увеличит личную накопительную скидку! Подробнее

Вариант 2. Открой один материал

Заинтересовала статья, но нет возможности стать членом клуба «Xakep.ru»? Тогда этот вариант для тебя! Обрати внимание: этот способ подходит только для статей, опубликованных более двух месяцев назад.


  • Подпишись на наc в Telegram!

    Только важные новости и лучшие статьи

    Подписаться

  • Подписаться
    Уведомить о
    1 Комментарий
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии