Статья расскажет о способах разбора и детектирования вредоносного сетевого взаимодействия в сети. Информация предоставляется для ознакомления. Здесь будут рассмотрены основные инструменты для анализа сетевого трафика и рассмотрены источники примеров для практики.
Готовые наборы вредоносного сетевого взаимодействия можно найти просто загуглив "malicious pcap". Неплохая подборка есть вот здесь. На первых порах лучше использовать этот трафик для понимания, как именно зловредное программное обеспечение может передавать информацию по сети. На ресурсе можно также обнаружить раздел с записанными сетевыми взаимодействиями, которые были созданы для того, чтобы научиться исследовать трафик. Попробуем проанализировать записанный трафик вредоносного программного обеспечения.
Выбранный файл сетевого взаимодействия представляет собой сетевую активность вредоносного программного обеспечения Trickbot. Так как мы не знаем, как построена сеть, где было записано сетевое взаимодействие, то выясним, какие машины вообще взаимодействуют в сети:
Всего 24 машины, достаточно много, попробуем выяснить, какие там используются протоколы:
По списку можно увидеть, что в сети используется операционная система Windows, работающая в инфраструктуре под управлением Windows AD. Поищем вредоносные сетевые взаимодействия. Обычно изучение начинается с просмотра количества информации, которая передается в рамках взаимодействия сетевых машин:
Интересным выглядит взаимодействие с ip адресом, который начинается с 149.28. Создадим фильтр:
В итоге видим такую картину:
Похоже, что на машине был открыт документ, который подгружает файл шаблона для документа MS Office. Далее находится обфусцированный скрипт на VBA:
Очевидно, что в записанное взаимодействие попал этап инфицирования ОС вредоносным программным обеспечением. Если взглянуть на вот такой фильтр:
Обнаруживаем, что сетевое взаимодействие зловреда также зашифровано. Что же делать? Ключей шифрования нет, прочесть информацию внутри пакетов не получится.
Этим вопросом задаются достаточно давно. Были найдены общие подходы, которые в совокупности с контекстом сетевого взаимодействия (программное обеспечение хоста, роли машин в локальной сети) могут позволить обнаружить вредоносное сетевое взаимодействие даже без его расшифрования.
Любопытный проект можно найти здесь. Проект использует в качестве инструмента для анализа зашифрованных трафиков нейронные сети. Именно они могут позволить классифицировать преобразованные взаимодействия.
Классификация осуществляется на базе следующих данных:
Автор OTUS MaxRokatansky
Анализ сетевого взаимодействия
В рамках этой статьи вредоносным будем считать трафик, который генерируется вредоносным программным обеспечением в локальной сети. Что в большинстве случаев генерирует в сети вредоносное программное обеспечение:- отчет о инфицировании системы;
- собранные в системе учетные данные;
- принимаемые команды от управляющего сервера;
- загружаемые модули обновления вредоноса;
- сетевой трафик, который используется для атак DDoS
- Иметь возможность записывать фрагменты сетевого взаимодействия;
- Знать основные шаблоны передачи зловредами данных по сети и способы сокрытия информации в сетевом взаимодействии.
Готовые наборы вредоносного сетевого взаимодействия можно найти просто загуглив "malicious pcap". Неплохая подборка есть вот здесь. На первых порах лучше использовать этот трафик для понимания, как именно зловредное программное обеспечение может передавать информацию по сети. На ресурсе можно также обнаружить раздел с записанными сетевыми взаимодействиями, которые были созданы для того, чтобы научиться исследовать трафик. Попробуем проанализировать записанный трафик вредоносного программного обеспечения.
Выбранный файл сетевого взаимодействия представляет собой сетевую активность вредоносного программного обеспечения Trickbot. Так как мы не знаем, как построена сеть, где было записано сетевое взаимодействие, то выясним, какие машины вообще взаимодействуют в сети:
Всего 24 машины, достаточно много, попробуем выяснить, какие там используются протоколы:
По списку можно увидеть, что в сети используется операционная система Windows, работающая в инфраструктуре под управлением Windows AD. Поищем вредоносные сетевые взаимодействия. Обычно изучение начинается с просмотра количества информации, которая передается в рамках взаимодействия сетевых машин:
Интересным выглядит взаимодействие с ip адресом, который начинается с 149.28. Создадим фильтр:
Код:
``` ip.addr==172.16.1.101 && tcp.port==65483 &&
ip.addr==149.28.140.9 && tcp.port==80```
Похоже, что на машине был открыт документ, который подгружает файл шаблона для документа MS Office. Далее находится обфусцированный скрипт на VBA:
Очевидно, что в записанное взаимодействие попал этап инфицирования ОС вредоносным программным обеспечением. Если взглянуть на вот такой фильтр:
Код:
tls
Обнаруживаем, что сетевое взаимодействие зловреда также зашифровано. Что же делать? Ключей шифрования нет, прочесть информацию внутри пакетов не получится.
Анализ сетевого взаимодействия: сегодня и в будущем
Любые навыки анализа сетевого взаимодействия разбиваются об использование шифрования трафика. Современным стандартом шифрования в сети на прикладном уровне модели OSI является использование HTTP over TLS. Зачастую это "Game Over" любого анализа, если недоступны ключи шифрования. Как же поступить в этом случае?Этим вопросом задаются достаточно давно. Были найдены общие подходы, которые в совокупности с контекстом сетевого взаимодействия (программное обеспечение хоста, роли машин в локальной сети) могут позволить обнаружить вредоносное сетевое взаимодействие даже без его расшифрования.
Любопытный проект можно найти здесь. Проект использует в качестве инструмента для анализа зашифрованных трафиков нейронные сети. Именно они могут позволить классифицировать преобразованные взаимодействия.
Классификация осуществляется на базе следующих данных:
- передаваемых с сообщением ClientHello TLS взаимодействия
- длины передаваемых данных
- временных таймаутов между отправкой данных
Автор OTUS MaxRokatansky