Уроки форензики. Ищем улики в сетевом трафике

Содержание статьи

  • Используемые утилиты
  • Анализ сетевого трафика
  • Выводы

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

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

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

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

 

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

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

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

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

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

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

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

    Про­цесс 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. Най­дем эти пакеты и выяс­ним количес­тво откры­тых пор­тов на ата­куемой машине, для это­го отфиль­тру­ем сетевой тра­фик.

    В поле «Дис­плей­ный филь­тр» ути­литы 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-вза­имо­дей­ствие

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

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

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

    Источник: xakep.ru

    Ответить

    Ваш адрес email не будет опубликован. Обязательные поля помечены *