Создание правильной среды анализа вредоносных программ - это первый шаг для каждого исследователя вредоносных программ. Когда все настройки системы и установка программного обеспечения будут завершены, вы сможете правильно анализировать и исследовать вредоносное ПО. В этом посте я хотел бы поделиться своим опытом и сценариями, которые помогут облегчить рабочую нагрузку по настройке вредоносной среды для исследования вредоносного ПО.
В этом посте вы узнаете, как:
Установка виртуальных машин
При запуске нескольких виртуальных машин операционная система хоста начинает замедляться, поэтому очень важно установить наилучшие требования для каждой виртуальной машины для оптимизации ее производительности. Чтобы настроить виртуальные машины в этом посте, я рекомендую установить для виртуальной машины Windows 10 минимальные требования: два ядра процессора с 4 ГБ ОЗУ и виртуальную машину Linux с двумя ядрами процессора с 2 ГБ ОЗУ.
Скачивание бесплатной Windows 10
Microsoft предоставляет бесплатную виртуальную машину, которая предназначена для тестирования веб-браузеров IE и Edge. Чтобы загрузить виртуальную машину Microsoft, перейдите по адресу https://developer.microsoft.com/en-us/microsoft-edge/tools/vms/, загрузите ZIP-файл MSEdge в Windows 10 и выберите предпочитаемую платформу виртуальной машины, в настоящее время я использую VM Fusion.
Скачивание REMnux Linux
Следующая виртуальная машина, которую мы хотим загрузить, - это REMnux Linux. Дистрибутив REMnux - это дистрибутив Linux, основанный на Ubuntu.
В нем есть отличные инструменты для изучения сетевых взаимодействий для поведенческого анализа и исследования взаимодействий вредоносных программ на системном уровне. Чтобы загрузить REMnux, перейдите по адресу https://docs.remnux.org/install-distro/get-virtual-appliance и загрузите платформу виртуальной машины по вашему выбору.
Установка и настройка частной изолированной пользовательской сети
Создание изолированной контролируемой сетевой среды при анализе вредоносных программ чрезвычайно важно из-за уровня взаимодействия, которое оно дает вам с вредоносными программами. VMware Fusion дает вам возможность изменять ключевые параметры сети и добавлять конфигурацию виртуальной частной сети, которая будет использоваться для анализа между узлами. Мы добавим только две виртуальные машины в эту лабораторную среду, но вы можете добавить много виртуальных машин в эту сеть. Процедура создания этой сети следующая:
Установка Windows 10
После того, как вы создали настраиваемую сеть и обе виртуальные машины были загружены, начните с распаковки MSEdge Windows 10. Поскольку я использую VMware Fusion, я расскажу, как импортировать виртуальный образ; процесс импорта виртуальной машины с другими платформами аналогичен.
Откройте VMware Fusion и выполните следующие действия:
Настройка REMnux
Виртуальная машина REMnux загружается как файл .ova. Я рекомендую вам перейти на сайт docs.REMnux.org, чтобы проверить хэш загруженного файла OVA.
Если вы используете VirtualBox, вы можете просто импортировать REMnux, но если вы используете VMware Fusion или VMware Workstation, следуйте этим инструкциям, чтобы импортировать REMnux:
- Выберите Файл->Импорт->Выбрать файл… и выберите remnux-v7, нажмите "Продолжить", а затем "Сохранить".
- Когда импорт будет завершен, нажмите Customize Settings.
- Щелкните панель "Процессоры и память" в разделе "Параметры системы" и оставьте настройки с двумя ядрами процессора; уменьшить объем памяти с 4096 МБ до 2048 МБ.
- Для сетевой конфигурации REMnux настройка немного отличается. Мы хотим добавить дополнительный сетевой адаптер.
Примечание. Я настраиваю эту виртуальную машину таким образом по нескольким причинам. Если мне нужно обновить или загрузить другое программное обеспечение с настроенным сетевым адаптером, я сэкономлю время; если я хочу разрешить вызовы вредоносного ПО.
Когда импорт будет завершен и вы окажетесь в меню "Настройки", выберите "Сетевой адаптер". Следующим шагом является нажатие кнопки "Добавить устройство…", затем "Сетевой адаптер" и "Добавить…". Убедитесь, что установлен переключатель "Поделиться с моим Mac". Вернитесь на главную панель "Настройки" и выберите Сетевой адаптер 2. Щелкните радиокнопку vmnet2, затем выберите "Показать все", чтобы вернуться к настройкам.
- При запуске виртуальной машины REMnux, если будет предложено обновить виртуальную машину до поддержки большей совместимости функций, выберите "Обновить".
- После загрузки REMnux учетные данные будут следующими: Имя пользователя:remnux Пароль:malware. Я всегда меняю пароль на своих виртуальных машинах:
-Следующим шагом является настройка сетевых параметров. Если вы наберете ifconfig -a, вы должны увидеть два сетевых адаптера:
1) Выберите NAT для первого сетевого адаптера. Виртуальная машина получит адрес в этой сети от виртуального DHCP-сервера VMware. Вы можете проверить связь с Google, чтобы узнать, есть ли у вас подключение, или открыть браузер Firefox и подключиться к любому веб-сайту, чтобы подтвердить, что у вас есть доступ в Интернет. Если вы этого не сделаете, введите следующую команду в терминале: $ sudo dhclient -r Это должно позволить вам получить IP.
2) Для второго адаптера ens37 введите следующую команду:
$ sudo ifconfig ens37 10.1.2.1 сетевая маска 255.255.255.0
- Нажмите кнопку "Снимок" и назовите его что-то вроде "Чистый снимок".
- Обновите REMnux:
$ sudo apt-get update; sudo apt-get upgrade
Установка SentinelLabs RevCore Tools
Одна из причин, по которой я хотел создать набор инструментов для анализа вредоносных программ SentinelLabs VM Bare Bones, заключалась в том, что при установке FlareVM я обнаружил, что он содержит множество инструментов, которые я не использую, и его установка занимает не менее 40 минут. Я хотел создать сценарий основных инструментов и конфигураций системы, которые мне нужны для анализа вредоносных программ.
Выполните следующую процедуру, чтобы установить инструменты SentinelLabs RevCore Tools в MSEdge WIndows 10:
- Перейдите на страницу Github SentinelLabs RevCore Tools и загрузите zip-архив.
- Разархивируйте его и перетащите скрипт SentinelLabs_RevCore_Tools_codeSnippet.ps1 на свой рабочий стол.
- Если вы используете бесплатно загруженную виртуальную машину Windows 10, о которой я упоминал выше, перейдите к шагу 4; если вы используете свою собственную виртуальную машину Windows, выполните следующие шаги:
-- Вместо того, чтобы перетаскивать только файл SentinelLabs_RevCore_Tools_codeSnippet.ps1, перетащите всю папку на рабочий стол виртуальной машины.
-- Откройте файл SentinelLabs_RevCore_Tools_codeSnpippet.ps1 и измените строку 4 после -PackageName. Вы измените URL-адрес и измените его на расположение каталога на рабочем столе. Например, https://raw.githubusercontent.com/S...e_Tools/master/SentinelLabs_RevCore_Tools.ps1 на c:\ Users\yourUsername\Desktop\SentinelLabs_RevCore_Tools;SentinelLabs_RevCore_Tools;
--Последнее, что нужно сделать, это изменить SentinelLabsRevCoreTools.ps1. В строках 105-117 замените IEUser на имя профиля пользователя, который вы используете. Сохраните все файлы и запустите скрипт. Например,
Install-ChocolateyShortcut -ShortcutFilePath "C:\Users\IEUser\Desktop\HxD.lnk" -TargetPath "C:\Program Files\HxD\HxD.exe"
Install-ChocolateyShortcut -ShortcutFilePath "C:\Users\YourUser Profile\Desktop\HxD.lnk" -TargetPath "C:\Program Files\HxD\HxD.exe"
-- Перейдите к шагу 5.
- В строке поиска Windows 10 введите powershell, щелкните правой кнопкой мыши и запустите от имени администратора. Перейдите к расположению сценария PowerShell SentinelLabs_RevCore_Tools_codeSnippet.ps1, затем запустите сценарий:
.\SentinelLabs_RevCore_Tools_codeSnippet.ps1.
- Сценарий вызовет две автоматические перезагрузки, и вам нужно будет снова войти в систему с вашим паролем пользователя после каждой. Первая перезагрузка продолжит отключение различных системных служб, которые в противном случае могут помешать анализу вредоносных программ, и продолжит установку основных инструментов. После второй перезагрузки скрипт завершит работу и подтвердит все настройки и установки.
Установленные инструменты и измененные конфигурации системы перечислены ниже. Не забудьте сделать снимок, когда он будет готов, и вы дойдете до точки "Введите ENTER для выхода".
Инструменты:
Checksum, 7zip, Process Explorer, Autoruns, TCPview, Sysmon, HxD, PEbear, PEStudio, PEsieve, Cmder, NXlog, X64dbg, X32dbg, Ollydbg, IDA-Free, Cutter, Ghidra, Openjdk11, Python3, PIP, PIP pefile, PIP Yara
Инструмент, который я часто использую, - это Hiew, в коллекции Chocolatey нет Hiew. Я рекомендую загрузить и опробовать бесплатную версию. Как только вы увидите мощь Hiew, вам обязательно стоит приобрести пожизненный доступ, потому что он стоит каждого пенни.
Конфигурация системы:
Отключите - поиск Bing, подсказки игровой панели, восстановление компьютера, UAC, обновление, брандмауэр, Защитник Windows, установите тему окна, установите обои, создайте ярлыки для инструментов
Сбор сетевого трафика
При анализе вредоносных программ часто операции вредоносных программ и C2 все еще активны, поэтому отличный способ оставаться в тени - запускать вредоносные программы в контролируемой среде. Анализ сетевого трафика - тривиальный процесс обнаружения вызовов вредоносного программного обеспечения в сетевом трафике в реальном времени. Этот раздел поможет вам настроить виртуальные машины для перехвата сетевого трафика вредоносного ПО или статического пошагового выполнения отлаживаемого кода, что позволит вашему исследованию понять потенциальную угрозу.
Первое, что необходимо настроить, - это обмен данными в виртуальной частной сети между MSEdge Windows 10 и REMnux:
Адаптер REMnux для виртуальной частной сети уже был настроен из предыдущего раздела.
Теперь, когда виртуальные машины объединены в сеть и могут обмениваться данными друг с другом, пришло время настроить несколько инструментов на виртуальной машине REMnux для захвата трафика.
На REMnux установлены различные инструменты, которые вы можете использовать для захвата сетевого трафика. Настроим Burp Suite и InetSim. Burp Suite обычно используется для тестирования брандмауэров веб-приложений, но в нашем случае мы хотим настроить его так, чтобы вредоносное ПО пыталась установить соединение с доменом или C2. Потенциально трафик будет использовать HTTPS и проходить через Burp Suite, который будет привязан к InetSim. INetSim - это программный пакет, который имитирует общие службы лабораторных сред для анализа поведения вредоносных программ в сети.
Конфигурация Burp Suite
Настройка Burp Suite проста, но есть пара шагов, которые мы должны настроить, прежде чем мы сможем начать ее использовать.
ВАЖНЫЕ ШАГИ:
Вернитесь к виртуальной машине REMnux. Вы по-прежнему должны быть на вкладке Burp Suite Proxy, Edit proxy listener options.
Настройка конфигурации INetSim
В REMnux предустановлен INetSim. Используйте свой любимый текстовый редактор и откройте файл inetsim.conf, расположенный в /etc/inetsim/. Для настройки INetSim выполните следующие действия:
$ sudo vi /etc/inetsim/inetsim.conf и включите все службы, раскомментировав службы, удалив символ #.
- Совет от профессионалов: имейте в виду, что вредоносная программа потенциально может обнаружить, что она работает в виртуальной среде, проверив, все ли в этом файле раскомментировано. Я еще не сталкивался с этим, но хорошо знать о этой возможности.
Вы можете использовать более консервативный подход и раскомментировать только те ьсервисы, которые собираетесь использовать.
- Следующим шагом является привязка IP-адреса сетевого адаптера REMnux в файле inetsim.conf. Следующий раздел после меню сервисов - это service_bind_address. Раскомментируйте # и измените IP-адрес по умолчанию с 10.10.10.1 на 0.0.0.0.
- Прокрутите вниз до раздела dns_default_ip, раскомментируйте # и измените IP-адрес с 10.10.10.1 на 10.1.2.1.
- Последнее, что нужно сделать, это привязать порт HTTPS, чтобы Burp Suite мог направлять трафик на порт 4443. Прокрутите вниз до раздела https_bind_port, раскомментируйте символ # и замените 443 на 4443.
- Сохраните изменения и выйдите из редактора.
- Следующим шагом является выполнение следующих команд, которые ОЧЕНЬ ВАЖНО выполнять, иначе INetSim не будет работать правильно. В Ubuntu есть системная служба с разрешением системы, которая обеспечивает разрешение сетевых имен для локальных приложений. Она конфликтует с INetSim, поэтому нам нужно отключить службу.
Мы должны отключить системное разрешение, а также замаскировать его, чтобы он не запускался автоматически при перезагрузке. Наконец, мы остановим службу.
- Последний шаг - запустить INetSim:
$ sudo inetsim
Чтобы проверить сетевое подключение с виртуальной машины Windows 10, откройте командную строку и выполните команду ping 10.1.2.1, затем откройте браузер Edge и введите 10.1.2.1. Вы должны увидеть следующее сообщение: "Это HTML-страница по умолчанию для поддельного режима HTTP-сервера INetSim".
Последний тест - убедиться, что DNS работает правильно и обслуживает запросы. В этом примере я набираю в строке поиска https://www.mymaliciousdomain.com/malwaretrojan.exe. Если все работает, вы должны увидеть предупреждение о том, что запрошенный сайт небезопасен.
Мне также нравится использовать Wireshark для захвата пакетов для анализа файлов pcap при исследовании вредоносных программ.
Откройте новую вкладку в вашем терминале в REMnux и введите $ wirehark.
После открытия приложения щелкните значок плавника акулы в дальнем левом углу панели инструментов, чтобы начать захват пакетов.
Запуск вредоносного ПО
Когда запускается вредоносная программа, она обычно запрашивает домен или IP-адрес. INetSim помогает в этом, подделывая ответы на вредоносное ПО, ожидающее ответа. Примером может быть случай, если вредоносная программа была запущена и обратилась к домену и не продолжит работу без ответа, если не будут выполнены условия, которыми является ответ. Если вредоносная программа не получит ответа, она прекратит свою работу и не продолжит свои вредоносные действия. Здесь живая среда помогает нам отвечать на запросы и захватывать сетевой трафик.
На последнем этапе настройки лабораторной среды мы запустим печально известный троян (или любое другое вредоносное ПО по вашему выбору), чтобы проверить правильность работы конфигурации.
Я тестирую двоичный файл Trickbot (SHA256: 49d95cae096f7f73b3539568b450076227b4ca42c0240044a7588ddc1f1b6985). Я открыл Process Explorer и TCPView, чтобы отслеживать выполнение этого варианта Trickbot.
Так может сэкономить много времени, прежде чем углубляться в реверс инжиниринг, поскольку оно позволяет собирать информацию и создавать объективные гипотезы. В этом примере, когда мы запустили этот образец трик-бота, остались три выноски:
Эти вызываемые cab-файлы были автоматическими средствами обновления ненадежных сертификатов. Список доверенных сертификатов - это заранее определенный список элементов, подписанный доверенным лицом. Эти запрошенные CAB-файлы используются для обновления и расширения существующих функций путем добавления известных ненадежных сертификатов в хранилище ненадежных сертификатов с помощью списка доверенных сертификатов.
Хотя Trickbot на сегодняшний день является одним из наиболее распространенных штаммов вредоносных программ и является более сложным, чем другие трояны, это хорошая отправная точка, если вы находитесь на начальной стадии исследования и никогда не сталкивались с этим двоичным кодом.
Я успешно использую эту лабораторную установку уже много лет. Реальный пример использования этой лабораторной установки произошел, когда меня в короткие сроки пригласили помочь с инцидентом в 2016 году. У меня не было времени на первоначальную сортировку двоичного кода, поскольку я присоединился к звонку в военную комнату для брифинга, проводимого руководителем следственной группы. Я запустил обе виртуальные машины из моментальных снимков и запустил двоичный файл, узнав об инциденте. В течение 5 минут я сообщил руководителю расследования об IP-адресе, на который обращался конкретный двоичный файл, и этого было достаточно, чтобы дать возможность охот никам за угрозами начать розыск. После звонка в военную комнату я начал реверсить вредоносное ПО и извлекать дополнительные IOC и TTP.
Заключение
Установка и конфигурация лабораторной среды меняются в ходе анализа вредоносных программ. При анализе вредоносных программ вам потребуются различные инструменты для анализа и глубокого анализа. Я надеюсь, что инструменты и конфигурации SentinelLabs RevCore в этой настройке помогут, но может быть время, когда вам нужно проанализировать что-то другое, например, .net, и может потребоваться дополнительный инструмент для полного дизассемблирования двоичного файла. Путь реверса вредоносного ПО - это марафон, а не спринт; целью должно быть развитие ваших навыков и изучение каждого вредоносного ПО.
Источник: https://labs.sentinelone.com/building-a-custom-malware-analysis-lab-environment/
Автор перевода: yashechka
Переведено специально для https://xss.pro
В этом посте вы узнаете, как:
- скачать, установить и настроить бесплатную Windows 10 и бесплатную виртуальную машину REMnux Linux
- настроить виртуальную частную сеть для связи между виртуальными машинами
- создать пользовательскую среду вредоносного ПО для Windows с помощью SentinelLabs RevCore Tools
- узнать, как захватить сетевой трафик с виртуальной машины Windows 10
Установка виртуальных машин
При запуске нескольких виртуальных машин операционная система хоста начинает замедляться, поэтому очень важно установить наилучшие требования для каждой виртуальной машины для оптимизации ее производительности. Чтобы настроить виртуальные машины в этом посте, я рекомендую установить для виртуальной машины Windows 10 минимальные требования: два ядра процессора с 4 ГБ ОЗУ и виртуальную машину Linux с двумя ядрами процессора с 2 ГБ ОЗУ.
Скачивание бесплатной Windows 10
Microsoft предоставляет бесплатную виртуальную машину, которая предназначена для тестирования веб-браузеров IE и Edge. Чтобы загрузить виртуальную машину Microsoft, перейдите по адресу https://developer.microsoft.com/en-us/microsoft-edge/tools/vms/, загрузите ZIP-файл MSEdge в Windows 10 и выберите предпочитаемую платформу виртуальной машины, в настоящее время я использую VM Fusion.
Скачивание REMnux Linux
Следующая виртуальная машина, которую мы хотим загрузить, - это REMnux Linux. Дистрибутив REMnux - это дистрибутив Linux, основанный на Ubuntu.
В нем есть отличные инструменты для изучения сетевых взаимодействий для поведенческого анализа и исследования взаимодействий вредоносных программ на системном уровне. Чтобы загрузить REMnux, перейдите по адресу https://docs.remnux.org/install-distro/get-virtual-appliance и загрузите платформу виртуальной машины по вашему выбору.
Установка и настройка частной изолированной пользовательской сети
Создание изолированной контролируемой сетевой среды при анализе вредоносных программ чрезвычайно важно из-за уровня взаимодействия, которое оно дает вам с вредоносными программами. VMware Fusion дает вам возможность изменять ключевые параметры сети и добавлять конфигурацию виртуальной частной сети, которая будет использоваться для анализа между узлами. Мы добавим только две виртуальные машины в эту лабораторную среду, но вы можете добавить много виртуальных машин в эту сеть. Процедура создания этой сети следующая:
- Выберите вкладку VMware Fusion->Настройки->Сеть; щелкните значок замка, чтобы внести изменения
- Нажмите кнопку "+", которая создаст vmnet# в разделе Custom.
- Не выбирайте параметр ЭРазрешить виртуальным машинам в этой сети подключаться к внешним сетям (с помощью NAT)Э.
- Добавьте IP-адрес подсети: я ввел 10.1.2.0
- Нажмите Применить
Установка Windows 10
После того, как вы создали настраиваемую сеть и обе виртуальные машины были загружены, начните с распаковки MSEdge Windows 10. Поскольку я использую VMware Fusion, я расскажу, как импортировать виртуальный образ; процесс импорта виртуальной машины с другими платформами аналогичен.
Откройте VMware Fusion и выполните следующие действия:
- После распаковки архива войдите в папку MSEdge-Win10-VMware.
- Выберите в VMware Fusion File->Import MSEdge_Win10_VMware, нажмите "Продолжить" и сохраните виртуальную машину; Импорт изображения займет несколько минут.
- Нажмите "Настроить параметры" после того, как изображение будет импортировано.
- Щелкните вкладку "Процессоры и память" и убедитесь, что в настройках указано два ядра процессора и объем памяти 4096 МБ.
- Перед включением виртуальной машины MSEdge Win10 сделайте снимок и назовите его как-нибудь вроде "VM Clean Import".
- Ксли при запуске виртуальной машины будет предложено обновить виртуальную машину для обеспечения большей совместимости функций, выберите "Обновить".
- Пароль к виртуальной машине - Passw0rd!
- Откройте командную строку, чтобы активировать виртуальную машину, введите slmgr.vbs / ato.
- При появлении запроса установите VMware "Virtual Tools" и перезагрузитесь.
- После перезагрузки виртуальной машины завершите вход в систему и сразу же сделайте снимок.
- Дайте ей описательное имя, например "Активация и установка инструментов ВМ".
Настройка REMnux
Виртуальная машина REMnux загружается как файл .ova. Я рекомендую вам перейти на сайт docs.REMnux.org, чтобы проверить хэш загруженного файла OVA.
Если вы используете VirtualBox, вы можете просто импортировать REMnux, но если вы используете VMware Fusion или VMware Workstation, следуйте этим инструкциям, чтобы импортировать REMnux:
- Выберите Файл->Импорт->Выбрать файл… и выберите remnux-v7, нажмите "Продолжить", а затем "Сохранить".
- Когда импорт будет завершен, нажмите Customize Settings.
- Щелкните панель "Процессоры и память" в разделе "Параметры системы" и оставьте настройки с двумя ядрами процессора; уменьшить объем памяти с 4096 МБ до 2048 МБ.
- Для сетевой конфигурации REMnux настройка немного отличается. Мы хотим добавить дополнительный сетевой адаптер.
Примечание. Я настраиваю эту виртуальную машину таким образом по нескольким причинам. Если мне нужно обновить или загрузить другое программное обеспечение с настроенным сетевым адаптером, я сэкономлю время; если я хочу разрешить вызовы вредоносного ПО.
Когда импорт будет завершен и вы окажетесь в меню "Настройки", выберите "Сетевой адаптер". Следующим шагом является нажатие кнопки "Добавить устройство…", затем "Сетевой адаптер" и "Добавить…". Убедитесь, что установлен переключатель "Поделиться с моим Mac". Вернитесь на главную панель "Настройки" и выберите Сетевой адаптер 2. Щелкните радиокнопку vmnet2, затем выберите "Показать все", чтобы вернуться к настройкам.
- При запуске виртуальной машины REMnux, если будет предложено обновить виртуальную машину до поддержки большей совместимости функций, выберите "Обновить".
- После загрузки REMnux учетные данные будут следующими: Имя пользователя:remnux Пароль:malware. Я всегда меняю пароль на своих виртуальных машинах:
-Следующим шагом является настройка сетевых параметров. Если вы наберете ifconfig -a, вы должны увидеть два сетевых адаптера:
1) Выберите NAT для первого сетевого адаптера. Виртуальная машина получит адрес в этой сети от виртуального DHCP-сервера VMware. Вы можете проверить связь с Google, чтобы узнать, есть ли у вас подключение, или открыть браузер Firefox и подключиться к любому веб-сайту, чтобы подтвердить, что у вас есть доступ в Интернет. Если вы этого не сделаете, введите следующую команду в терминале: $ sudo dhclient -r Это должно позволить вам получить IP.
2) Для второго адаптера ens37 введите следующую команду:
$ sudo ifconfig ens37 10.1.2.1 сетевая маска 255.255.255.0
- Нажмите кнопку "Снимок" и назовите его что-то вроде "Чистый снимок".
- Обновите REMnux:
$ sudo apt-get update; sudo apt-get upgrade
Установка SentinelLabs RevCore Tools
Одна из причин, по которой я хотел создать набор инструментов для анализа вредоносных программ SentinelLabs VM Bare Bones, заключалась в том, что при установке FlareVM я обнаружил, что он содержит множество инструментов, которые я не использую, и его установка занимает не менее 40 минут. Я хотел создать сценарий основных инструментов и конфигураций системы, которые мне нужны для анализа вредоносных программ.
Выполните следующую процедуру, чтобы установить инструменты SentinelLabs RevCore Tools в MSEdge WIndows 10:
- Перейдите на страницу Github SentinelLabs RevCore Tools и загрузите zip-архив.
- Разархивируйте его и перетащите скрипт SentinelLabs_RevCore_Tools_codeSnippet.ps1 на свой рабочий стол.
- Если вы используете бесплатно загруженную виртуальную машину Windows 10, о которой я упоминал выше, перейдите к шагу 4; если вы используете свою собственную виртуальную машину Windows, выполните следующие шаги:
-- Вместо того, чтобы перетаскивать только файл SentinelLabs_RevCore_Tools_codeSnippet.ps1, перетащите всю папку на рабочий стол виртуальной машины.
-- Откройте файл SentinelLabs_RevCore_Tools_codeSnpippet.ps1 и измените строку 4 после -PackageName. Вы измените URL-адрес и измените его на расположение каталога на рабочем столе. Например, https://raw.githubusercontent.com/S...e_Tools/master/SentinelLabs_RevCore_Tools.ps1 на c:\ Users\yourUsername\Desktop\SentinelLabs_RevCore_Tools;SentinelLabs_RevCore_Tools;
--Последнее, что нужно сделать, это изменить SentinelLabsRevCoreTools.ps1. В строках 105-117 замените IEUser на имя профиля пользователя, который вы используете. Сохраните все файлы и запустите скрипт. Например,
Install-ChocolateyShortcut -ShortcutFilePath "C:\Users\IEUser\Desktop\HxD.lnk" -TargetPath "C:\Program Files\HxD\HxD.exe"
Install-ChocolateyShortcut -ShortcutFilePath "C:\Users\YourUser Profile\Desktop\HxD.lnk" -TargetPath "C:\Program Files\HxD\HxD.exe"
-- Перейдите к шагу 5.
- В строке поиска Windows 10 введите powershell, щелкните правой кнопкой мыши и запустите от имени администратора. Перейдите к расположению сценария PowerShell SentinelLabs_RevCore_Tools_codeSnippet.ps1, затем запустите сценарий:
.\SentinelLabs_RevCore_Tools_codeSnippet.ps1.
- Сценарий вызовет две автоматические перезагрузки, и вам нужно будет снова войти в систему с вашим паролем пользователя после каждой. Первая перезагрузка продолжит отключение различных системных служб, которые в противном случае могут помешать анализу вредоносных программ, и продолжит установку основных инструментов. После второй перезагрузки скрипт завершит работу и подтвердит все настройки и установки.
Установленные инструменты и измененные конфигурации системы перечислены ниже. Не забудьте сделать снимок, когда он будет готов, и вы дойдете до точки "Введите ENTER для выхода".
Инструменты:
Checksum, 7zip, Process Explorer, Autoruns, TCPview, Sysmon, HxD, PEbear, PEStudio, PEsieve, Cmder, NXlog, X64dbg, X32dbg, Ollydbg, IDA-Free, Cutter, Ghidra, Openjdk11, Python3, PIP, PIP pefile, PIP Yara
Инструмент, который я часто использую, - это Hiew, в коллекции Chocolatey нет Hiew. Я рекомендую загрузить и опробовать бесплатную версию. Как только вы увидите мощь Hiew, вам обязательно стоит приобрести пожизненный доступ, потому что он стоит каждого пенни.
Конфигурация системы:
Отключите - поиск Bing, подсказки игровой панели, восстановление компьютера, UAC, обновление, брандмауэр, Защитник Windows, установите тему окна, установите обои, создайте ярлыки для инструментов
Сбор сетевого трафика
При анализе вредоносных программ часто операции вредоносных программ и C2 все еще активны, поэтому отличный способ оставаться в тени - запускать вредоносные программы в контролируемой среде. Анализ сетевого трафика - тривиальный процесс обнаружения вызовов вредоносного программного обеспечения в сетевом трафике в реальном времени. Этот раздел поможет вам настроить виртуальные машины для перехвата сетевого трафика вредоносного ПО или статического пошагового выполнения отлаживаемого кода, что позволит вашему исследованию понять потенциальную угрозу.
Первое, что необходимо настроить, - это обмен данными в виртуальной частной сети между MSEdge Windows 10 и REMnux:
- На виртуальной машине Windows 10 выберите настраиваемую сеть vmnet2 (Виртуальная машина->Сетевой адаптер-> Пользовательская (vmnet2)).
- На виртуальной машине Windows 10 щелкните правой кнопкой мыши сетевой адаптер на панели задач и выберите "Открыть настройки сети и Интернета".
- Выберите Ethernet и нажмите Изменить параметры адаптера.
- Щелкните правой кнопкой мыши Ethernet0 и выберите "Свойства".
- Дважды щелкните Интернет-протокол версии 4 (TCP/IPv4).
- Щелкните переключатель, чтобы выбрать "Использовать следующий IP-адрес:", затем добавьте IP-адрес, маску подсети, шлюз по умолчанию и предпочитаемый DNS-сервер следующим образом:
-- IP-адрес: 10.1.2.100
-- Маска подсети: 255.255.255.0
-- Шлюз по умолчанию: 10.1.2.1
-- Щелкните переключатель, чтобы выбрать «Использовать следующий адрес DNS-сервера:», и добавьте: Предпочтительный DNS-сервер: 10.1.2.1
-- Нажмите OK, чтобы завершить настройку сетевых параметров.
Адаптер REMnux для виртуальной частной сети уже был настроен из предыдущего раздела.
Теперь, когда виртуальные машины объединены в сеть и могут обмениваться данными друг с другом, пришло время настроить несколько инструментов на виртуальной машине REMnux для захвата трафика.
На REMnux установлены различные инструменты, которые вы можете использовать для захвата сетевого трафика. Настроим Burp Suite и InetSim. Burp Suite обычно используется для тестирования брандмауэров веб-приложений, но в нашем случае мы хотим настроить его так, чтобы вредоносное ПО пыталась установить соединение с доменом или C2. Потенциально трафик будет использовать HTTPS и проходить через Burp Suite, который будет привязан к InetSim. INetSim - это программный пакет, который имитирует общие службы лабораторных сред для анализа поведения вредоносных программ в сети.
Конфигурация Burp Suite
Настройка Burp Suite проста, но есть пара шагов, которые мы должны настроить, прежде чем мы сможем начать ее использовать.
- Откройте командную строку и введите: $ sudo Burp Suite.
- выберите "Временный проект", затем нажмите "Далее" и затем "Запустить Burp".
- Выберите вкладку "Прокси", а затем "Параметры". В Proxy Listeners выберите интерфейс по умолчанию и нажмите кнопку Edit.
- На вкладке "Привязка" установите для параметра "Привязать к адресу определенный адрес: 10.1.2.1" и нажмите "ОК".
ВАЖНЫЕ ШАГИ:
- Вернитесь к своей виртуальной машине MSEDGE с Windows 10 и откройте браузер Edge.
- Введите в адресной строке: http://10.1.2.1:8080. Вы должны увидеть "Burp Suite Community Edition".
- Загрузите сертификат CA в правом верхнем углу страницы.
- Откройте расположение файла и дважды щелкните файл сертификата.
- Выберите Установить сертификат ....
- Выберите "Текущий пользователь" в качестве места хранения и нажмите "Далее".
- Выберите Автоматически выбирать хранилище сертификатов в зависимости от типа сертификата. Щелкните Далее, а затем - Готово.
- Зайдите в настройки браузера EDGE и отключите все функции безопасности; это поможет в тестировании подключения к INetSim в следующем разделе.
- Убедитесь, что вы сделали снимок.
Вернитесь к виртуальной машине REMnux. Вы по-прежнему должны быть на вкладке Burp Suite Proxy, Edit proxy listener options.
- На вкладке "Обработка запросов" установите "Перенаправить на хост на локальный хост" и "Перенаправить на порт" на 4443. Выберите поддержку невидимого проксирования.
- Теперь перейдите на вкладку "Перехват" и убедитесь, что перехват выключен.
- В разделе Proxy Listeners выберите значение по умолчанию и нажмите Edit.
- На вкладке "Привязка" выберите "Привязать к адресу: конкретный адрес: 10.1.2.1" следует сохранить, но измените привязку к порту 443.
- Перейдите на вкладку "Обработка запросов" и установите для параметра "Перенаправить на хост" значение "localhost" и "Перенаправить на порт" значение 4443.
- Выберите "Поддержка невидимого проксирования" (включите только при необходимости) и нажмите "ОК".
Настройка конфигурации INetSim
В REMnux предустановлен INetSim. Используйте свой любимый текстовый редактор и откройте файл inetsim.conf, расположенный в /etc/inetsim/. Для настройки INetSim выполните следующие действия:
$ sudo vi /etc/inetsim/inetsim.conf и включите все службы, раскомментировав службы, удалив символ #.
- Совет от профессионалов: имейте в виду, что вредоносная программа потенциально может обнаружить, что она работает в виртуальной среде, проверив, все ли в этом файле раскомментировано. Я еще не сталкивался с этим, но хорошо знать о этой возможности.
Вы можете использовать более консервативный подход и раскомментировать только те ьсервисы, которые собираетесь использовать.
- Следующим шагом является привязка IP-адреса сетевого адаптера REMnux в файле inetsim.conf. Следующий раздел после меню сервисов - это service_bind_address. Раскомментируйте # и измените IP-адрес по умолчанию с 10.10.10.1 на 0.0.0.0.
- Прокрутите вниз до раздела dns_default_ip, раскомментируйте # и измените IP-адрес с 10.10.10.1 на 10.1.2.1.
- Последнее, что нужно сделать, это привязать порт HTTPS, чтобы Burp Suite мог направлять трафик на порт 4443. Прокрутите вниз до раздела https_bind_port, раскомментируйте символ # и замените 443 на 4443.
- Сохраните изменения и выйдите из редактора.
- Следующим шагом является выполнение следующих команд, которые ОЧЕНЬ ВАЖНО выполнять, иначе INetSim не будет работать правильно. В Ubuntu есть системная служба с разрешением системы, которая обеспечивает разрешение сетевых имен для локальных приложений. Она конфликтует с INetSim, поэтому нам нужно отключить службу.
Мы должны отключить системное разрешение, а также замаскировать его, чтобы он не запускался автоматически при перезагрузке. Наконец, мы остановим службу.
- Последний шаг - запустить INetSim:
$ sudo inetsim
Чтобы проверить сетевое подключение с виртуальной машины Windows 10, откройте командную строку и выполните команду ping 10.1.2.1, затем откройте браузер Edge и введите 10.1.2.1. Вы должны увидеть следующее сообщение: "Это HTML-страница по умолчанию для поддельного режима HTTP-сервера INetSim".
Последний тест - убедиться, что DNS работает правильно и обслуживает запросы. В этом примере я набираю в строке поиска https://www.mymaliciousdomain.com/malwaretrojan.exe. Если все работает, вы должны увидеть предупреждение о том, что запрошенный сайт небезопасен.
Мне также нравится использовать Wireshark для захвата пакетов для анализа файлов pcap при исследовании вредоносных программ.
Откройте новую вкладку в вашем терминале в REMnux и введите $ wirehark.
После открытия приложения щелкните значок плавника акулы в дальнем левом углу панели инструментов, чтобы начать захват пакетов.
Запуск вредоносного ПО
Когда запускается вредоносная программа, она обычно запрашивает домен или IP-адрес. INetSim помогает в этом, подделывая ответы на вредоносное ПО, ожидающее ответа. Примером может быть случай, если вредоносная программа была запущена и обратилась к домену и не продолжит работу без ответа, если не будут выполнены условия, которыми является ответ. Если вредоносная программа не получит ответа, она прекратит свою работу и не продолжит свои вредоносные действия. Здесь живая среда помогает нам отвечать на запросы и захватывать сетевой трафик.
На последнем этапе настройки лабораторной среды мы запустим печально известный троян (или любое другое вредоносное ПО по вашему выбору), чтобы проверить правильность работы конфигурации.
Я тестирую двоичный файл Trickbot (SHA256: 49d95cae096f7f73b3539568b450076227b4ca42c0240044a7588ddc1f1b6985). Я открыл Process Explorer и TCPView, чтобы отслеживать выполнение этого варианта Trickbot.
Так может сэкономить много времени, прежде чем углубляться в реверс инжиниринг, поскольку оно позволяет собирать информацию и создавать объективные гипотезы. В этом примере, когда мы запустили этот образец трик-бота, остались три выноски:
Эти вызываемые cab-файлы были автоматическими средствами обновления ненадежных сертификатов. Список доверенных сертификатов - это заранее определенный список элементов, подписанный доверенным лицом. Эти запрошенные CAB-файлы используются для обновления и расширения существующих функций путем добавления известных ненадежных сертификатов в хранилище ненадежных сертификатов с помощью списка доверенных сертификатов.
Хотя Trickbot на сегодняшний день является одним из наиболее распространенных штаммов вредоносных программ и является более сложным, чем другие трояны, это хорошая отправная точка, если вы находитесь на начальной стадии исследования и никогда не сталкивались с этим двоичным кодом.
Я успешно использую эту лабораторную установку уже много лет. Реальный пример использования этой лабораторной установки произошел, когда меня в короткие сроки пригласили помочь с инцидентом в 2016 году. У меня не было времени на первоначальную сортировку двоичного кода, поскольку я присоединился к звонку в военную комнату для брифинга, проводимого руководителем следственной группы. Я запустил обе виртуальные машины из моментальных снимков и запустил двоичный файл, узнав об инциденте. В течение 5 минут я сообщил руководителю расследования об IP-адресе, на который обращался конкретный двоичный файл, и этого было достаточно, чтобы дать возможность охот никам за угрозами начать розыск. После звонка в военную комнату я начал реверсить вредоносное ПО и извлекать дополнительные IOC и TTP.
Заключение
Установка и конфигурация лабораторной среды меняются в ходе анализа вредоносных программ. При анализе вредоносных программ вам потребуются различные инструменты для анализа и глубокого анализа. Я надеюсь, что инструменты и конфигурации SentinelLabs RevCore в этой настройке помогут, но может быть время, когда вам нужно проанализировать что-то другое, например, .net, и может потребоваться дополнительный инструмент для полного дизассемблирования двоичного файла. Путь реверса вредоносного ПО - это марафон, а не спринт; целью должно быть развитие ваших навыков и изучение каждого вредоносного ПО.
Источник: https://labs.sentinelone.com/building-a-custom-malware-analysis-lab-environment/
Автор перевода: yashechka
Переведено специально для https://xss.pro
Последнее редактирование: