Один из способов детектировать малварь — запустить ее в «песочнице», то есть изолированной среде, где можно следить за поведением вредоноса. В этой статье мы посмотрим, как устроены сендбоксы, и изучим приемы уклонения от детекта — и широко освещенные в интернете, и принципиально новые, упоминания о которых не удалось найти ни в специализированной литературе, ни на просторах Сети.
Борьба вирусописателей и производителей антивирусов — это борьба технологий: с появлением новых методов защиты сразу же появляются методы противодействия. Поэтому многие вредоносные программы первым делом проверяют, не запущены ли они в виртуальной машине или песочнице. Если вредоносу кажется, что он выполняется не на реальном «железе», то он, скорее всего, завершит работу.
Технику обхода песочниц часто называют термином Sandbox Evasion. Эту технику используют многие кибергруппировки, например PlugX или Cozy Bear (APT29). Так, нашумевшая группировка Anunak (авторы известного трояна Carbanak) использовала встроенное в документ изображение, которое активирует полезную нагрузку, когда пользователь дважды щелкает по нему.
Песочница в Windows. Программа Sandboxie
Проще всего понять, как работают механизмы обнаружения виртуальных сред, с использованием возможностей PowerShell и WMI.
Пример построения песочницы
Традиционный враг любого вируса — специально подготовленная виртуальная машина, в которой исследователь запускает образец вредоносного ПО. Иногда вирусные аналитики используют сложные автоматизированные системы для анализа объектов в изолированной среде на потоке с минимальным участием человека. Такого рода ПО или программно-аппаратные комплексы поставляют разные компании, в частности FireEye (Network/Email Security), McAfee (Advanced Threat Defense), Palo Alto (Wildfire), Check Point (SandBlast), Kaspersky (Anti-Targeted Attack Platform), Group-IB, TDS. Также существуют опенсорсные песочницы, например Cuckoo Sandbox.
В России этот сегмент рынка относительно молод и начал активно развиваться примерно в 2016 году. Технологии песочницы, как ты видишь, используют практически все топовые производители средств информационной безопасности.
Начнем с базы и кратко пробежимся по внутреннему устройству виртуальной машины (ВМ). Для начала запомни, что ВМ — это абстракция от физического железа (аппаратной составляющей). Этот тезис понадобится, чтобы понимать, откуда у нас, собственно, возникли некоторые из приемов обнаружения изолированных сред.
Сердце ВМ — это гипервизор. Гипервизор сам по себе в некотором роде минимальная операционная система (микроядро или наноядро). Он предоставляет запущенным под его управлением операционным системам сервис виртуальной машины, то есть виртуализирует или эмулирует реальное (физическое) аппаратное обеспечение. Гипервизор также управляет этими виртуальными машинами, выделяет и освобождает ресурсы для них.
Напомним некоторые особенности виртуальных машин. Во-первых, центральный процессор гипервизора никогда не виртуализируется, а распределяет свои ресурсы между виртуальными машинами. То есть гипервизор не может выделить, например, половинку от ядра для какой-либо ВМ. Во-вторых, аппаратные компоненты при виртуализации фактически представляют собой файлы и не могут обладать физическими характеристиками HDD, такими, например, как износ секторов диска и другие параметры из SMART.
Как правило, виртуальные машины внутри песочниц разворачиваются чистыми (без специализированных средств анализа вредоносных программ внутри ВМ). Весь анализ выполняется гипервизором, в противоположность «ручным» исследовательским лабораториям, где на виртуальную машину уже установлен весь джентельменский набор программ для отслеживания активности вредоноса (OllyDbg, IDA, Wireshark, RegShot, Mon, Ripper, Process Monitor/Explorer и прочие). В этих прогах каждый созданный вирусописателями модуль защиты или проверка на наличие виртуального окружения обходится правкой кода вируса в дизассемблированном виде. Ниже схематически изображен анализ в одной из коммерческих песочниц — данные взяты из патента на продукт. Название мы нарочно оставим за кадром, так как нам интересен не конкретный производитель, а сама идея и подход к решению задачи.
Большинство коммерческих систем динамического анализа объектов построены по схожей схеме. Кратко поясним идею алгоритма.
- Файлы, поступающие на анализ, попадают в очередь на проверку.
- Приложение, отвечающее за безопасность, вместе с анализатором выполняет предварительные операции: сигнатурную, эвристическую и иные проверки. Проверка объекта в ВМ сама по себе очень затратна по времени и ресурсам. В итоге определяется, нужно ли отправлять образец на анализ в песочницу, и конкретные параметры виртуальной машины (включая версию и разрядность ОС), а также метод анализа объекта.
- Объект помещается в ВМ и исполняется. В ВМ нет никакого специализированного ПО — только стандартный набор программ обычного офисного сотрудника типичной компании; также имеется доступ в интернет (выявить сетевую активность вредоноса).
- Все действия исследуемой программы внутри ВМ через гипервизор попадают в анализатор, который должен понять, происходит что-то вредоносное или нет, опираясь на вшитые в него шаблоны поведения.
- Контекст и результаты анализа заносятся в базу данных для хранения, дальнейшего использования и обучения анализатора. Отсюда становится ясной основная фишка автоматизированных систем анализа объектов. Они действуют за областью виртуальной машины — на стороне гипервизора — и анализируют всю поступающую на него информацию. Именно поэтому вредоносной программе нецелесообразно искать специальные инструменты анализа на стороне ВМ, но мы в статье будем это делать, чтобы более широко охватить тему.
На основе каких гипервизоров строятся песочницы? Обычно это Open Source и коммерческие гипервизоры на основе KVM. У того и у другого подхода есть свои плюсы и минусы, которые мы свели в табличку.
Очень часто, чтобы скрыть, что программа работает в виртуальной среде, в гипервизорах с открытым исходным кодом используется метод под названием харденинг. В этом случае часть доступных для определения параметров (например, идентификаторы производителей устройств) пробрасывается в виртуальную машину или заглушается сгенерированными данными.
Исследуя программу в песочнице, эмулируют действия пользователя (движение мыши, запуск приложений, работа в интернет-браузере). Проверяют работу образца с правами администратора, а также сдвигают время, чтобы выявить специфические условия активации вредоносной составляющей (некоторые из них начинают действовать после определенного периода «сна») и логических бомб.
Определение работы в песочнице
Существует ли фильтр «Песочница» (Sandbox) на самом деле?
Денис Савельев Редакция «Текстерры»
О фильтре «песочница», который накладывается на молодые сайты, в среде оптимизаторов всегда были бурные дискуссии. Основная масса оптимизаторов считает, что он существует, но мне доводилось общаться с весьма авторитетными для меня экспертами, которые полагают, что фактически такого фильтра нет, а существует некий псевдофильтр, который не дает возможности получать трафик молодому сайту – но не по причине наложенного фильтра, а по причине других объективных факторов – по сути, недостаточной авторитетности сайта, определяемой совокупностью факторов, а не молодостью сайта как таковой.
Итак, давайте сначала постараемся определить, что под песочницей именуют оптимизаторы. Песочница – она же sandbox – так именуют этот фильтр (или все же псевдофильтр?) зарубежные оптимизаторы, продвигающие сайты в Гугле. Это некий период времени, наступающий после запуска сайта, когда, что бы вы ни предпринимали, это не дает вам абсолютно никакой видимости в поисковых системах, не считая переходов по брендированным запросам или уж совсем по ультра-низкочастотке, по которой просто нет больше других релевантных ответов в выдаче.
Откуда взялись разговоры о песочнице? Ведь представители поисковых систем никогда не подтверждали наличие этого фильтра. Все просто. Любой оптимизатор, имеющий опыт работы с молодыми проектами сталкивался что называется лоб в лоб с этим фильтром. Молодой проект коммерческой тематики.
Делаешь все верно: хорошая структура у сайта, грамотная навигация, отличные тексты, даже беклинки естественные есть, а результата нет. Потом, бац – и резкий взлет, низкочастотка начинает выходить в топы, причем не какие-то отдельные запросы, а большое количество разноплановых запросов – и коммерческих, и информационных, и геозависимых, и геонезависимых. У нас самих в нашей практике множество таких примеров. О чем тут говорить, есть песочница, есть! Причем в особо конкурентных тематиках при продвижении в регионе Москва и Московская область сайт может находиться в песочнице очень долго. Вот, например, наш клиент в тематике «юридические услуги»:
С июня 2013 года мы работаем над проектом – с момента запуска проекта. Все делали правильно с самого начала – расширенная семантика, хорошая структура, правильная навигация, грамотные вовлекающие тексты, отличная верстка контента. Но это юридические услуги, и это регион Москва. 6 месяцев поисковый трафик не рос вообще, находясь на уровне 20-30 посетителей в день из органики.
Стратегию не меняли, просто продолжали работу, и потом – бац! – сразу трафик вырос до 150 человек в день из поисковой выдачи. При этом в первые 3-4 месяца работы мы делали по проекту гораздо больше, чем потом – весь первый этап шла работа по расширению семантики и созданию первичного наполнения сайта, спустя шесть месяцев – только внутренняя оптимизация, перелинковка и контент-маркетинг. Одно дело создавать 2-3 материала в неделю в блог и другое дело – информационное наполнение 300-350 информационных разделов сайта.
Узнаваемо, правда? Любой оптимизатор сталкивался с подобным, работая над молодыми сайтами.
Это нормальная в общем-то вещь, и все к ней уже давно привыкли. 6, 8, 10, а иногда и 12 месяцев сайт коммерческой тематики (предоставляющий товары или услуги) будет находиться в песочнице, что бы вы ни делали. При этом некоторые думают, что в этот период можно вообще ничего не делать. Но это ошибка, именно в этот период сайт требует серьезной работы.
И от качества и объема этой работы в общем-то зависят сроки выхода из песочницы. И с каким результатом вы из нее выйдете – будете ли болтаться в топ-30 по слабоконкурентным ключам или войдете в топ-5 по продающим низкочастотникам – это тоже зависит от того, как эффективно вы поработаете на старте.
Но!
Но что-то меня все время заставляет думать об этом фильтре. И заставляет думать о нем то, что на некоторых проектах никакой песочницы не наблюдается, либо она длится буквально пару недель. Приведу такой пример.
Впечатляет, неправда? Через 3 недели работы мы вышли на показатель 800 уников в день с поиска, через месяц – 1400 уников.
И такие примеры иногда тоже случаются. Где тут песочница? Почему ее нет?
Объясняется все просто. У меня нет никаких фактов, просто обобщенный опыт, но хочу с вами им поделиться.
Песочница, по моему глубокому убеждению, существует. Реальный ли это предфильтр, накладываемый на сайт поисковиками, или некое логическое следствие отсутствия доказанной авторитетности сайта для поиска – не столь важно. Песочница есть!
Но по моему опыту, попадают под него сайты коммерческих тематик (компаний, стартапов, сервисов, созданные для предоставления тех или иных товаров или услуг), при этом услуги эти (или товары) должны быть… как бы это сказать… обычными, распространенными, популярными. Хотите вы открыть юридическое агентство? Готовьтесь пройти песочницу.
Собирайтесь продавать через интернет-магазин товары для детей? Готовьтесь пройти песочницу. Занимаетесь веб-дизайном? В песочницу! Продаете кухонные принадлежности? В песочницу!
Что бы вы ни делали с сайтом, как бы ни пахали, в первые 4-6-8-10 месяцев трафика из органической выдачи у вас будет недостаточно для окупаемости бизнеса. Имейте это в виду и планируйте свою маркетинговую деятельность исходя из того, что в первое время нужны будут серьезные бюджеты на получение трафика из других источников (да, контекст тут предпочтительней, но он дорог – думайте головой, ищите нестандартные решения).
Так все же, что насчет тех сайтов, которым удается избежать песочницы? Постараюсь объяснить. Это сайты… нестандартные, неформатные, с необычной услугой, спрос на который сейчас отсутствует либо очень мал, но при это он, спрос, начинает бурно расти. Сюда же я бы отнес – не все, а некоторые – информационные проекты. Почему не все?
Потому что, если вы создали очередной кулинарный блог и пишете туда по 2-3 материала в неделю – песочницы вам не избежать. Если же ваш блог необычен по тематике, при этом он с первого же дня, с первых материалов, начинает получать читательский отклик (в виде, прежде всего, непоискового трафика, в виде лайков, расшариваний и т.д.), то песочницы вы избежите. Другими словами, чтобы не попасть в песочницу, нужно чтобы на ваш контент (если вы медиа) либо вашу услугу/товар был какой-никакой спрос, а в тематике была небольшая конкуренция либо полное ее отсутствие.
На примере №2, на котором изображен график без песочницы, вы видите проект, который является по сути фотохостингом, сайтом для публикации своих фото, но обладающий некоторыми несвойственными для подобных сервисов функциями (например, отсутствием регистрации). То есть, это не сайт, где можно собирать свои фотоальбомы, разбивая их по тематике или годам. Это сайт, куда можно быстро скинуть любую картинку, чтобы разместить ссылку на нее в сети. Сервис востребован пусть небольшой, но реально существующей аудиторией. И именно эта востребованность сервиса «здесь и сейчас», в настоящий момент времени, позволила нам обойти песочницу.
Но беда в том, что таких проектов очень мало. Большая часть заказчиков услуг поискового маркетинга, скорее всего, не подпадает под эту категорию. Юридических и бухгалтерских фирм, интернет-магазинов и производственных компаний в разы больше, чем вот таких вот «экстравагантных» сервисов. Но ничего плохого в этом нет, в общем-то.
Как правило, деньги в итоге начинают зарабатывать именно «обычные» фирмы – с гораздо более высоким процентом вероятности успеха. Даже несмотря на трудности с получением трафика из органики в первое время. Да, тут есть конкуренция (и в интернете, и в офлайне), да, тут есть песочница. Но тут есть готовый пользовательский спрос и понятные правила монетизации.
И доход у таких проектов после выхода из-под песочницы гораздо более высокий на каждого привлеченного посетителя из поиска. Другими словами, сайт по оказанию юридических услуг с трафиком в 150 целевых уникальных посетителей в день с поиска – это действующий бизнес, поставленный на рельсы, который обанкротить можно, только совершая какие-то нелепые и глупые ошибки. А вот 2000 уников в день на картиночный сервис монетизируется только по рекламной модели, и доходность там, предположительно, не такая уж и высокая (хотя, честно, финансовых отчетов не видел, проект живет и развивается, а это говорит, что в общем-то бюджеты на оптимизацию были оправданы).
Что делать, когда вы в песочнице?
Но что же делать, если миновать песочницы вам не удалось? Первая и самая большая ошибка, которую можно только совершить – это ничего не предпринимать в это время. Над сайтом нужно работать. Да, понимая и принимая тот факт, что отдача от проекта сейчас будет не такая высокая. Но работать, идти путем внесения ежедневных улучшений пользовательских характеристик сайта.
Пусть эти изменения будут небольшие, но постоянные.
Отлично вам поможет пережить песочницу контент-маркетинг. Создавайте и публикуйте различные материалы для вашей целевой аудитории – гайды, статьи, white paper, инфографику, видеообзоры. Требование тут одно – эти материалы должны иметь некую добавленную информационную ценность, они не должны быть «рерайтом» миллиона других статей, размещенных в интернете.
Зачем вам нужен контент-маркетинг в это время? Тут есть две причины. Он существенно сократит ваши сроки пребывания в песочнице. И, что не менее важно, после выхода из песочницы, благодаря контент-маркетингу, вы сможете быстро наработать хорошие поведенческие факторы ранжирования. Да, именно поведенческие.
Думать, что контент-маркетинг влияет только на текстовые факторы ранжирование – грубейшая ошибка.
PT Sandbox
Злоумышленники постоянно развивают вредоносное ПО так, чтобы его не обнаруживали классические средства защиты: антивирусы, межсетевые экраны, IPS, почтовые и веб-шлюзы.
Выявлять такое вредоносное ПО может отдельный класс решений — песочницы. Песочница запускает файл в изолированной виртуальной среде, анализирует действия, которые он совершает в системе, и выдает вердикт о том, безопасен этот файл или нет.
Наше решение
PT Sandbox – передовая песочница, которая позволяет защитить компанию от целевых и массовых атак с применением современного вредоносного ПО. Она поддерживает гибкую удобную кастомизацию виртуальных сред для анализа и обнаруживает угрозы не только в файлах, но и в трафике.
Определяет все популярные векторы атак
PT Sandbox контролирует основные каналы передачи файлов и ссылок в инфраструктуре. Анализирует вложения электронной почты и документы в файловых хранилищах, которые загружаются на корпоративные сайты и скачиваются из интернета, а также выявляет угрозы в трафике корпоративной сети организации.
Возможности продукта
PT Sandbox — гибкая система защиты от новейших и актуальных для российского рынка угроз, адаптируется под специфику бизнеса благодаря:
- гибкой кастомизации виртуальных сред: в них можно добавить специфическое ПО, которое действительно используется в компании и может стать точкой входа для злоумышленников;
- уникальным «приманкам», провоцирующим вредоносное ПО совершить активные действия и выдать себя. Файлы-приманки содержат поддельные учетные записи, файлы конфигурации или другую информацию, имитирующую данные реальной инфраструктуры;
- настраиваемому машинному обучению, которое повышает точность выявления неизвестных целенаправленных угроз. С его помощью анализируются более 8500 признаков поведения объекта: действия процессов, цепочки последовательностей вызовов API, сетевое взаимодействие, создаваемые вспомогательные объекты.
Установка на Astra Linux и поддержка анализа в средах с «РЕД ОС»
PT Sandbox поддерживает виртуальные среды с Windows различных версий и с российскими ОС, такими как Astra Linux и «РЕД ОС». Продукт определяет, на каком этапе находятся злоумышленники, и соотносит результат анализа с техниками и тактиками атакующих по матрице MITRE ATTCK под Linux.
PT Sandbox поддерживает работу в промышленных сетях
PT Sandbox обнаруживает неизвестное вредоносное ПО, нацеленное на компоненты АСУ ТП (SCADA) иностранных и отечественных производителей. Продукт дает возможность кастомизировать среду эмуляции и «приманки» с учетом специфики инфраструктуры промышленного предприятия.
Песочница промышленного масштаба: защищаемся от атак на АСУ ТП с помощью PT Sandbox
Промышленность входит в тройку наиболее атакуемых отраслей в РФ. Основным рабочим методом злоумышленников в этой отрасли стабильно остается применение вредоносного ПО.
На вебинаре мы познакомимся с промышленной версией песочницы PT Sandbox. Она позволяет выявлять действия специфических зловредов, нацеленных на инфраструктуру промышленных предприятий. Разберем ряд кейсов с выявлением подобных угроз, а также рассмотрим, какие задачи PT Sandbox решает в составе PT ICS — комплексного решения для защиты АСУ ТП.
Почему необходима кастомизация виртуальных сред?
Вредоносные программы для целевых атак разрабатываются под конкретную компанию и используемое в ней ПО. Для их выявления в песочнице должен работать тот же софт, что и на реальной рабочей станции.
Вредоносная программа, созданная под Google Chrome, стоящий на ваших рабочих станциях, не запустится в песочнице, в которой стоит Edge. Как итог — песочница без кастомизации пропустит файл, и ваша компания будет скомпрометирована.
PT Sandbox решает эту проблему — настраивайте виртуальные среды так, как вам необходимо.
Подробнее о кастомизации
В статье на Хабре мы объясняем, почему нужно эмулировать работу реальных рабочих станций и как изменились техники вредоносных программ для обхода песочниц в последние годы, а также рассказываем, какие технологии применяем в продукте для защиты от подобных техник.
Вебинары о детектировании сложного вредоносного программного обеспечения
Источник: www.ptsecurity.com