Категория > Новости > Код под надзором. Создаем виртуальную лабораторию для анализа малвари - «Новости»

Код под надзором. Создаем виртуальную лабораторию для анализа малвари - «Новости»


3-11-2021, 00:00. Автор: Родион
VMware Workstation Pro — это гипер­визор для нас­толь­ных компь­юте­ров, отрасле­вой стан­дарт для работы с вир­туаль­ными машина­ми.


Kali Linux или любая дру­гая опе­раци­онная сис­тема на базе ядра Linux. Я исполь­зую Kali, так как в ней по умол­чанию уста­нов­лены необ­ходимые инс­тру­мен­ты.


Windows 10 или дру­гая акту­аль­ная вер­сия Windows. Наиболь­шее количес­тво вре­донос­ных фай­лов раз­работа­но под Windows, поэто­му ана­лизи­ровать их луч­ше имен­но в этой опе­раци­онной сис­теме.


Inetsim — прог­рам­мный про­дукт, пред­назна­чен­ный для модели­рова­ния интернет‑сер­висов в лабора­тор­ных усло­виях, нап­ример для ана­лиза сетево­го поведе­ния неиз­вес­тных образцов вре­донос­ных прог­рамм.


FLARE VM — пол­ностью нас­тра­иваемый набор инс­тру­мен­тов на базе Windows для ана­лиза вре­донос­ных прог­рамм, реаги­рова­ния на инци­ден­ты, тес­тирова­ния на про­ник­новение и так далее.


Burp Suite исполь­зует­ся в качес­тве проз­рачно­го прок­си‑сер­вера с целью ана­лиза вза­имо­дей­ствия вре­донос­ного фай­ла по про­токо­лу HTTPS.


Ida Pro — инте­рак­тивный дизас­сем­блер, исполь­зуемый для реверс‑инжи­нирин­га. Одно из пре­иму­ществ IDA — встро­енный пла­гин Hex Rays, а так­же под­дер­жка отладки уда­лен­ных при­ложе­ний, которая необ­ходима при ана­лизе вре­донос­ных фай­лов под Linux.


 

Создание лаборатории


На­ша лабора­тория будет работать на двух вир­туаль­ных машинах 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. Тес­тирова­ние работос­пособ­ности нашей лабора­тории.


 

Установка Inetsim


По умол­чанию в Kali Linux уже уста­нов­лен Inetsim, но, если ты исполь­зуешь дру­гую опе­раци­онную сис­тему на базе ядра Linux, про­цесс уста­нов­ки очень прост и опи­сан в до­кумен­тации.
Дос­таточ­но про­читать инс­трук­цию для заг­рузки па­кета Inetsim при помощи ути­литы apt либо dpkg.


 

Установка необходимого ПО на виртуальную машину Windows


При иссле­дова­нии вре­донос­ных фай­лов необ­ходимо иметь под­ходящий инс­тру­мен­тарий. Я исполь­зую FLARE-VM — набор инс­тру­мен­тов для ста­тичес­кого и динами­чес­кого ана­лиза вре­донос­ных прог­рамм.


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



  1. Заг­ружа­ем фай­лы из репози­тория flare-vm: git clone https://github.com/mandiant/flare-vm.git.

  2. От­кры­ваем PowerShell от име­ни адми­нис­тра­тора.

  3. Раз­бло­киру­ем уста­новоч­ный файл, выпол­нив коман­ду Unblock-File .install.ps1.

  4. Вклю­чаем выпол­нение скрип­та с помощью коман­ды Set-ExecutionPolicy Unrestricted.

  5. Вы­пол­няем сце­нарий уста­нов­щика: .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


Файл кон­фигура­ции Inetsim рас­положен по пути /etc/inetsim/inetsim.conf. Откро­ем его, что­бы нас­тро­ить прог­рамму.



Перейти обратно к новости