Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
Physical Address
304 North Cardinal St.
Dorchester Center, MA 02124
При расследовании киберинцидентов часто приходится вскрывать вредоносные программы, изучать их взаимодействие с сетью и файловой системой. Результатом исследования обычно становятся сигнатуры вредоноса и индикаторы компрометации (IOCs), а сам анализ проводится в изолированной среде при помощи специального инструментария. О том, как устроена такая лаборатория, мы сегодня и поговорим.
Многие вредоносы взаимодействуют с управляющим сервером, используя протокол HTTPS, который шифрует передаваемые данные. Поэтому в сетевом трафике нельзя обнаружить команды взаимодействия и отправляемую информацию. Когда под рукой нет автоматизированной песочницы, но необходимо проанализировать HTTP- и HTTPS-запросы, вызовы DNS и многое другое, можно собрать подходящий стенд самостоятельно.
warning
Не рекомендуется исследовать вредоносные программы на рабочей операционной системе, поскольку это может привести к заражению машины и утере ценных данных.
Для организации исследовательской лаборатории можно использовать разный софт. Мой набор выглядит следующим образом.
Наша лаборатория будет работать на двух виртуальных машинах c IP-адресами 10.10.10.1 (Kali Linux с установленным Inetsim) и 10.10.10.2 (Windows 10 с установленным программным обеспечением для реверс‑инжиниринга), находящихся в изолированной сети. На виртуальной машине Kali Linux будут работать различные интернет‑службы, а на виртуальной машине Windows мы будем исследовать вредоносные программы.
Схема виртуальной лаборатории для анализа вредоносного кода
Собирать лабораторию будем в шесть этапов:
1. Установка VMware Workstation Pro, создание виртуальной машины из образа Kali Linux и Windows (я использую Kali Linux 2019 и Windows 10).
2. Установка необходимого ПО на виртуальную машину Kali Linux.
3. Установка необходимого ПО на виртуальную машину Windows 10.
4. Настройка изолированной виртуальной сети.
5. Настройка ПО Inetsim.
6. Тестирование работоспособности нашей лаборатории.
По умолчанию в Kali Linux уже установлен Inetsim, но, если ты используешь другую операционную систему на базе ядра Linux, процесс установки очень прост и описан в документации.
Достаточно прочитать инструкцию для загрузки пакета Inetsim при помощи утилиты apt либо dpkg.
При исследовании вредоносных файлов необходимо иметь подходящий инструментарий. Я использую FLARE-VM — набор инструментов для статического и динамического анализа вредоносных программ.
Перед установкой нужно разрешить виртуалке с Windows подключаться к интернету, а сам процесс выполняется в несколько шагов.
git clone https://github.com/mandiant/flare-vm.git
.
Unblock-File .install.ps1
.
Set-ExecutionPolicy Unrestricted
.
.install.ps1
.
Более подробно установка описана в репозитории. После ее завершения на рабочем столе должен появиться каталог FLARE
, в котором содержится отсортированный по категориям набор утилит.
Так, в папке Debuggers
лежит набор отладчиков, в каталоге PE
— инструменты для анализа PE-файлов, позволяющие выявлять компиляторы, упаковщики или крипторы, в директории Disassemblers
, соответственно, хранятся инструменты для дизассемблирования. В комплекте поставки имеется бесплатная версия IDA, но я советую приобрести лицензионный продукт. Также для разработки YARA-правил рекомендую установить YARA Editor.
Многие вредоносы умеют определять, что их пытаются запустить в виртуальной среде, и сразу же завершают работу. Чтобы противостоять этому, необходимо настроить виртуальную машину соответствующим образом. Малварь использует различные методы идентификации виртуалок: проверку идентификатора CPUID, проверку известных MAC-адресов, перечисление имен процессов для обнаружения виртуальной машины, а также проверку ключей реестра.
Методы защиты от всех этих методов описаны здесь.
После настройки виртуальных машин необходимо создать изолированную сеть, которая будет связывать две наших виртуалки. Открываем вкладку каждой виртуальной машины, переходим к разделу VM → Settings → Network Adapter и создаем LAN Segment.
Создание LAN-сегмента
Настраиваем интерфейс на Kali Linux, устанавливаем IP-адрес 10.10.10.1
, маска сети 24
.
Настройка сетевого интерфейса Kali Linux
Настраиваем интерфейс для Windows 10: IP-адрес 10.10.10.2
, маска 255.255.255.0
, основной шлюз 10.10.10.1
, предпочитаемый DNS-сервер 10.10.10.1
.
Настройка интерфейса для Windows 10
Проверяем доступность второй машины в нашей виртуальной сети:
ping 10.10.10.1
Проверка работоспособности изолированной сети
Файл конфигурации Inetsim расположен по пути /etc/inetsim/inetsim.conf
. Откроем его, чтобы настроить программу.
Источник: xakep.ru