РУССКИЙ
РУССКИЙ
ENGLISH
28 июня 2021

Не из нашей песочницы: Sandbox vs Malware Detonation Platform

В рамках проекта «Кибербез для C-level: просто о сложном»
Станислав Фесенко
Руководитель департамента системных решений Group-IB
У нее было правило: не доверять тем, кто собой заслоняет свет,
я снял с нее платье, а под платьем – бронежилет…
Александр Васильев
группа «Сплин» - «Черный цвет Солнца», 1995

На этот раз предметом нашего небольшого исследования (первая часть нашего ликбеза доступна здесь) станет весьма интересный подход к анализу данных, поступающих в IT-инфраструктуру компании, а иногда и в технологические сети предприятий. Разумеется, мы имеем ввиду не просто информацию, а анализ объектов.

Что такое объект в нашем случае? Это файл. Он, в свою очередь, представляет собой последовательность данных, сохраненных в некоторую сущность. По сути — область диска, содержащая нули и единички в определенной последовательности. Интересно, что и обычное электронное письмо, которое прилетает в вашу почтовую программу (Outlook, Mail, Thunderbird и т.д.), тоже на самом деле имеет формат .eml. Так что и это объекты.

Чтобы анализировать их не обычными индикаторами (имя файла, контрольная сумма объекта или другие атрибуты файла), а делать это глубже и детальнее, были придуманы методики поведенческого — или динамического — анализа. Вообще существует два основных способа анализа файлов: статический, когда файл оценивается без запуска (открытия), и динамический, когда он запускается на рабочем компьютере или в изолированной среде.

В целом, обе эти методики используются классами решений, которые сегодня будут в центре нашего внимания, однако основной профит от их использования — в динамическом анализе. Ну что, начнем?
Sandbox: песочница обыкновенная, потоковая
Первое, что приходит на ум для поведенческого анализа, — взять подозрительный файл, принести его, скажем, на флешке на компьютер, который отключен от корпоративной сети, да и от интернета (на всякий случай), запустить его там и посмотреть, что будет.
Это рабочая схема, но у нее есть пара существенных недостатков:
1
Изоляция от интернета
Практически все современные вредоносные файлы, которые используются для целевых атак, — трояны. После запуска они связываются с командными серверами злоумышленников. А если связи с ними нет, то ничего опасного трояны и не делают. Тогда вместо анализа мы получим дырку от бублика и, конечно, загрустим.
2
Сложность, неудобство и высокая стоимость
Если в нашу компанию в день поступает пять писем и пользователи скачивают еще два файла из интернета за весь рабочий день, то можно, конечно, нанять человека и выделить ПК для проверки этих объектов. Но если писем в день 20 000, то организовывать такой процесс не имеет никакого экономического смысла.
Для этого были придуманы решения класса Sandbox — песочницы. Идея в том, чтобы потоково проверять объекты, поступающие в сеть извне. В первую очередь электронные письма и скачиваемые из интернета файлы. Песочницы бывают программными, то есть устанавливаемыми на компьютер пользователя, и сетевыми — аппаратными. Это отдельные сервера, которые на вход получают интернет- и почтовый трафик (как правило, копию трафика) и затем производят поведенческий анализ извлеченных из этого потока объектов.
Для этого анализа внутри песочницы работает ферма виртуальных машин — выделенных пространств, имитирующих компьютер пользователя с полноценным или урезанным Windows внутри или с другой операционной системой. На каждой виртуальной машине происходит анализ одного полученного объекта. Всеми машинами управляет специальный программный модуль — гипервизор. Он так взаимодействует с виртуальными машинами, что на лету может заглянуть внутрь и считать изменения в системе после запуска объекта.

Все эти изменения, поведенческие маркеры, попадают в другой программный модуль — классификатор. В нем содержатся правила, какие маркеры и их последовательности говорят о вредоносности объекта. Ближайшая аналогия — реалити-шоу «За стеклом» или любое аналогичное. Зритель (классификатор) следит за поведением (маркерами) участников шоу (объектов) и по их поведению определяет, кто из участников более токсичный и кого из шоу надо выгнать.

Маркеры в песочнице могут отражать такие изменения в работе системы, как созданные, удаленные или модифицированные файлы, попытки установки сетевых соединений, изменение записей реестра (настроек операционной системы и программ в ней), запуск и остановка программ, логин и выход пользователей и многое другое.

Классификатор должен получать регулярные обновления правил.

Также внутри песочницы, как правило, есть статический анализ на основе антивируса.
На что обратить внимание?
Нужно найти баланс между стоимостью решения, качеством детектирования вредоносных объектов, временем анализа и количеством виртуальных машин, которые могут одновременно исследовать разные объекты. Вот так просто на первый взгляд, однако под капотом множество нюансов.
Качество имитирования пользовательской среды
Многие потоковые песочницы очень легко обнаружить изнутри, и современные разработчики троянов знают, как это сделать. Оцениваются аппаратные ресурсы, выделенные виртуальной машине, имена пользователей, директорий и компьютера, наличие типового для атакуемой организации ПО, язык системы, время и дата и еще множество нюансов. Часто качественная имитация стоит дорого, но показывает себя в бою намного эффективнее.
Поддержка Golden Image
Golden Image — это образ системы, из которого будут загружаться виртуальные машины. Если производитель предусмотрел такую возможность, пользователь может сам скормить системе подготовленный образ, похожий на компьютеры пользователей компании. Но это палка о двух концах. Некоторые вендоры не дают загружать Golden Image, потому что сами сильно перерабатывают виртуальные машины для повышения качества детектирования. Однако это скорее справедливо для класса MDP, о котором поговорим далее.
Поддерживаемые форматы анализируемых файлов
Казалось бы, чем больше, тем лучше, но это не всегда так. Разумеется, .exe важен для всех компаний, как и .zip, и .docx. Но некоторые маркетологи вписывают такие форматы, которые в природе и не встречаются вовсе, только чтобы баттл-карты выглядели выигрышнее. Нужно собрать и проанализировать статистику по форматам файлов, которые попадают в вашу инфраструктуру, и выбирать с умом.
Извлечение скрытых объектов
Нередко в почте злоумышленник пытается спрятать объект от песочницы. Основных техник две: архивы и ссылки. Файл может быть в архиве с паролем, который находится в другом файле, в тексте письма, в другом письме или в архиве внутри архива. А еще вместо файла в письме может быть ссылка на скачивание файла, или на сайт с другой ссылкой на скачивание файла, или на файлообменник с вводом текста с картинки для скачивания. Разные продукты по-разному подготовлены к таким сложным ситуациям.
Опции по преднастройке анализа
Время анализа, язык операционной системы, временная зона — это и многое другое в некоторых продуктах можно настроить, в других — нельзя, а третьи вообще делают это за вас с помощью machine learning.
HTTPS-трафик
Практически все современные сайты используют протокол защищенного соединения HTTPS. Cтоит сразу подумать, как песочница будет собирать файлы из зашифрованного трафика. Может, его расшифрует proxy-сервер и передаст файлы по протоколу ICAP? Или его расшифрует другое решение и уже расшифрованную копию подаст на песочницу? Нужно помнить про этот момент при выборе продукта.
Отчеты
Подробность и понятность отчетов о поведенческом анализе — важный фактор. Можно купить навороченный продукт, а потом долго искать аналитика, который сможет расшифровать его вердикты.
Forensic Sandbox: форензик-ориентированная песочница
По сути, основные отличия этих средств от обычных песочниц следующие:
Они не потоковые, то есть аналитик "скармливает" объекты таким средствам руками
Они должны предоставлять расширенные настройки анализа
Выбор операционной системы, списка предустановленного ПО, имени пользователя и компьютера, наименования устройств (сетевых карт, жестких дисков и т.д.), времени анализа и множества других нюансов.
Они должны предоставлять расширенный отчет, включающий полные логи изменений в оперативной памяти, дисковой подсистеме, файловой системе, реестре, сетевых коммуникаций
Логи должны подкрепляться артефактами: образцами файлов, претерпевших изменения, для скачивания, записью сетевых сессий в формате PCAP и так далее. Должен быть инструментарий для съема дампов — слепков оперативной памяти и жесткого диска, а также для быстрого поиска по логам и артефактам.
Классификатор тоже должен быть настраиваемым
Выбирать их нужно с учетом этих особенностей. А вообще стоит задуматься, нужно ли такое решение вашей организации и есть ли квалифицированный персонал, способный с ним работать. Может быть, в случае расследования стоит довериться профессионалам — компаниям, которые этим профильно занимаются. У некоторых есть даже услуги подписки на криминалистику и реагирование на инциденты. Это недорого, а результат может быть выше, чем от своих криминалистов.
MDP — Malware Detonation Platform
Malware Detonation Platform стала логичным развитием песочниц. В принципе продукты этого класса можно с небольшой натяжкой назвать Next Generation Sandbox, или Sandbox 2.0. Главное их отличие — детонация.

Что это такое? Очень часто, когда речь идет о сложной целевой атаке со злыми троянами, недостаточно анализировать один объект. Попав на компьютер пользователя, такое вредоносное ПО связывается с серверами злоумышленников, зачастую используя нетипичные сетевые протоколы и маскируя свою коммуникацию, а затем загружает с этих серверов дополнительные компоненты атаки. Затем эти компоненты устанавливаются на компьютер пользователя, и создаются отложенные задачи на их запуск через месяц, или через десять перезагрузок ПК, или еще когда-нибудь.

Хорошая MDP умеет определять, какого сценария ожидает целевая атака, и подстраивает среду операционной системы внутри виртуальной машины под ожидаемые условия — тем самым «заставляет атаку сдетонировать». В итоге за время стандартного поведенческого анализа удается «отсмотреть» атаку, которая может развиваться на обычном компьютере пользователя месяцами.
Такие средства в обязательном порядке должны реализовать продвинутые техники по имитации пользовательской среды, выявлению скрытой полезной нагрузки и выдавать наивысшее качество детектирования вредоносных файлов. Для этого зачастую используются сильно кастомизированные образы операционных систем, поэтому Golden Image чаще всего недоступен.

Разные вендоры используют разный подход для реализации детонации. Для примера рассмотрим решение Group-IB Threat Hunting Framework.
Функции MDP в нем возложены на модули Polygon и Atmosphere:
извлечение скрытой полезной нагрузки за счет анализа ссылок и архивов – аттачей к письмам, в том числе поиск паролей к архиву в приложенных документах и в цепочках писем;
имитация пользовательской активности, в том числе движений мышью, ввода на клавиатуре и умных «кликов» по нужным элементам веб-сайтов;
предоставление пользователю системы доступа по RDP на виртуальную машину во время анализа;
имитация среды – обновляемые словари с наименованиями устройств в системе, пользователей, ключевых директорий и возможность синхронизации с Active Directory;
аппаратные ресурсы каждой виртуальной машины, полностью сопоставимые с типовым рабочим ПК по процессорным мощностям, объему оперативной и постоянной памяти и многое другое.
Несмотря на то, что MDP — тоже потоковое средство, оно, как правило, дороже, поскольку сложнее и требует больших ресурсных мощностей, чем стандартная песочница. Это плата за качество детектирования и подробность отчетов, которые, в свою очередь, вплотную приближаются к уровню Forensic-Sandbox, но более понятны и автоматизированы. Итак, выводы?
Чаще всего рассмотренные средства всех перечисленных классов не являются отдельными системами, а входят как модули в более крупные продукты других классов – Next Generation Firewall-ов, решений Anti-APT, XDR и т.д (о них поговорим в следующих выпусках). Однако, важно заметить, что в составе более крупных продуктов зачастую можно добиться блокирования доставки вредоносных писем, скачивания вредоносных файлов и даже автоматизированного запрета запуска вредоносных файлов на компьютерах пользователей, если их принесли туда на флешке или прислали через мессенджер. Для выбора системы поведенческого анализа нужно тестирование. Идеально опробовать сразу несколько конкурирующих решений различных вендоров по поведенческому анализу, подать на них одинаковые копии почтового и веб-трафика, собрать у каждого вендора набор тестовых сэмплов, объединить их в единое целое и использовать в продуктовом стеке. А дальше выбрать лучшее из лучших. И это можно сделать совершенно бесплатно. До новых встреч! Оставайтесь в безопасности!