Light mode

Живой трафик vs синтетический трафик: что круче?

  • #Standoff
  • #ThreatHunting

Последние несколько лет я плотно занимался вирусным анализом. Это полезный опыт: погружение во вредоносный код помогает понять, как мыслят люди на той стороне. Благодаря этому я смог посмотреть на атакующих под другим углом — не так, как их привыкли видеть пентестеры, red team и другие практики наступательной безопасности.

В этой статье мы сравним два вида атак:

  • Реальные. Обсудим практики, которые красные применяют на киберполигоне, и подходы реальных киберпреступников. 
  • Синтетические. Разберемся, для чего нужны системы эмуляции атак и в каких случаях они могут заменить классические red team. 

Попробуем выделить преимущества и недостатки каждого подхода и разобраться, какой из них больше подходит для киберполигона. Погнали!

Про живой трафик

Red team

Давайте начнем с «хороших красных». Какие задачи они решают в рамках киберполигона? 

В первую очередь участники сталкиваются с задачками, которые я называю «Hack the Box»: здесь атакующим нужно забирать флаги на одном-двух хостах. В очень крупную клетку алгоритм можно описать так:

  1. Осмотр хоста. Команда ищет информацию для первичного доступа к формам аутентификации на лендингах веб-страниц и сканирует открытые порты.
  2. Брутфорс учетных записей. На этом этапе участники подбирают пароли для обнаруженных почтовых адресов и никнеймов пользователей. Тем самым они пытаются получить доступы: к почтовым ящикам, уже упомянутой форме аутентификации на сайте, службе FTP-сервера или какой-нибудь популярной базе данных. Список можно продолжать долго.
  3. Эксплуатация уязвимостей (удаленное выполнение кода или внедрение команд). Может выполняться как благодаря брутфорсу, так и вместо него (или не выполняться вовсе). Зачастую это самая интересная часть атаки: она позволяет получить первичный доступ на хост-жертву.
  4. Повышение привилегий. На этом моменте красные уже снимают пару плюшек с почти захваченного компьютера, но пока это «дешевый» результат. Для дальнейшего развития атаки нужно заполучить больше прав. Как правило, красные эксплуатируют уязвимости ОС, чтобы добраться до заветных root-прав. Но их конечная цель может быть масштабнее: контроль БД с доступом к чувствительным данным, управление бизнес-процессом, который нужно скомпрометировать, захват учетной записи для выполнения действий на другом сервисе и т. д.
  5. Реализация целевого недопустимого события. Вишенка на торте — то, ради чего ребята и собрались в этот прекрасный день. На этом моменте мучения несчастного компьютера обычно заканчиваются.
Рисунок 1. Алгоритм действий атакующих при захвате машины  с уязвимым сервисом.svg
Рисунок 1. Алгоритм действий атакующих при захвате машины с уязвимым сервисом

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

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

  1. Фишинг пользовательской машины. Атакующие присылают пользователю письмо с вредоносным вложением, полезные нагрузки проходят первичную фильтрацию и запускаются на машине жертвы. Цель — создать первичную опорную точку (Foothold) для дальнейшего развития атаки.
  2. Повышение привилегий. Опять же, с первичным доступом далеко не уйдешь: чтобы продвинуться дальше, нужно повысить себе права. 

Обычно мы оставляем на пользовательских машинах закладки, которые упрощают жизнь атакующим. Однако участники часто находят совершенно новые пути, о которых мы даже не думали. Мы не считаем это нарушением правил или собственным упущением, ведь это делает испытания еще интереснее!

  1. Разведка по сети. Красные начинают искать в сети цели поинтереснее: фрукты, за которыми гонится команда, обычно находятся на важных серверах или машинах значимых пользователей.
  2. Горизонтальное перемещение (Pivoting). Атакующие закрепляются в новых точках и буквально обкладываются туннелями, чтобы свободно разгуливать по инфраструктуре.
  3. Реализация целевого недопустимого события. Здесь как карта ляжет :) Красные могут полностью завладеть атакуемым офисом, захватить несколько машин, вывести из строя отдельные системы или сделать все и сразу.
Рисунок 2. Алгоритм действий атакующих при захвате инфраструктуры офиса.svg
Рисунок 2. Алгоритм действий атакующих при захвате инфраструктуры офиса

Для наглядности я снова упростил алгоритм, но основную мысль, думаю, вы уловили. Отмечу, что на пути к победе красных могут ждать самые неожиданные препятствия: ограничения сетевого доступа, автоматическое или ручное реагирование на конечных хостах и т. д. Любая банальная ошибка может привести к потере доступа, и все придется начинать сначала.

Дикая природа

Теперь давайте посмотрим на хакеров из «дикой природы». Какие интересные нюансы в деятельности киберпреступников можно выделить сегодня?

Хитрые фишинговые нагрузки. Визитная карточка большинства хакерских группировок! Плохие парни проявляют фантазию и активно используют нетипичные форматы исполняемых файлов, эксплойты в редких офисных документах и, конечно же, LOLBins. А какие изысканные формулировки иногда встречаются в теле вредоносных писем… 

Рисунок 3. Пример фишинговой нагрузки, содержащей сразу два файла разных форматов (файл-полиглот)

Sideloading. Моя любимая техника! Злоумышленники маскируют вредоносный код и запускают его вместе с доверенными программами. Это простой, в некотором смысле топорный метод, но он надежен как швейцарские часы и применяется почти всегда. Такие атаки бывает крайне сложно обнаружить, и они часто превращаются в успешные киберинциденты — значит, практика работает.

Закрепление. Чтобы обеспечить себе длительное присутствие в системе, хакеры используют разные техники: 

  • Простые: например, маскировку под легитимный софт, который не вызовет подозрений у защитников.
  • Более сложные: например, компрометация служб аутентификации пользователя или подмена разделяемых (общеиспользуемых) объектов. Они позволяют обходить сложные средства защиты, которые, к сожалению, тоже не идеальны.

На киберполигоне красные часто проносятся по инфраструктуре, как ветер: им просто нет смысла озадачиваться обеспечением автозапуска на захваченных хостах. В реальности же атаки часто размываются по времени на недели, месяцы, а то и годы! 

Кастомные эксплойты. Стоит признать, что это под силу далеко не всем кибергруппировкам, однако кастомизация общеизвестных техник и приемов — далеко не редкость. Она затрудняет обнаружение атаки с помощью методов, которые строятся на детектировании известных пентестерских инструментов и характерных команд. Некоторые реализации ВПО сбивают логику обнаружения СЗИ, основанную на корреляции тех или иных событий.

Нестандартные протоколы обратной связи. Системы анализа сетевого трафика ежедневно сталкиваются с плодами фантазии атакующих. Это могут быть собственные транспортные протоколы, редкие сетевые протоколы прикладного уровня, внешние легитимные сервисы для передачи команд или извлечения конфиденциальных данных с машин и т. д.

Рисунок 4. Пример сетевой коммуникации трояна GTPDOOR по протоколу GTP-C

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

Про синтетический трафик

Согласитесь, обнаружить атаку в искусственной обучающей среде не так уж сложно. Если на машине есть движение, значит, пришли красные. Если тишина, вероятно, атаки нет. В результате любой шум начинает восприниматься как нечто подозрительное. В реальной жизни все иначе: на каждой машине постоянно что-то происходит, ведь офис живет. Поэтому, говоря о синтетических атаках, важно учитывать, что на киберполигоне реализована симуляция пользовательской активности в инфраструктуре. Степень разнообразия и частота таких помех заметно усложняют жизнь защитникам и мешают отделять мух от котлет.

На рынке ИБ существуют продукты класса Breach and Attack Simulation (BAS). Их цель — эмулировать и автоматически проводить хакерские атаки в выделенной инфраструктуре. При этом реализация конкретного решения может меняться в зависимости от его задач:

  • Blackbox. Если система должна самостоятельно искать возможные точки проникновения и распространения по инфраструктуре, чтобы захватить определенную машину, получить доступ к файлу или остановить критичный процесс, BAS работает в режиме черного ящика. 
  • Whitebox. Если система должна воспроизводить тщательно размеченную последовательность действий по определенному расписанию, это режим белого ящика. В этом случае оператор BAS может гибко настраивать шаги атаки и даже менять сложность отдельных действий. 

Для решения подобных задач мы используем на киберполигоне специально разработанную BAS-систему Archer. Схема его работы представлена на рис. 5.

Рисунок 5. Схема работы Archer на киберполигоне Standoff

Возникает логичный вопрос: в каких случаях имеет смысл использовать регулируемые атаки вместо реальных red team? Сценариев много, и все они опираются на важные фичи подобных систем:

  1. Возможность повторного воспроизведения идентичных атак. Важным фактором в обучении синих является проверка ранее усвоенных навыков. Иногда для этого нужно точно воспроизвести атаку, с которой защитники уже сталкивались. Вряд ли красные смогут раз за разом в точности повторять последовательность своих действий (это не только сложно, но и ужасно скучно!). Кроме того, благодаря воспроизводимости атак можно проводить честное сравнение скиллов нескольких команд защитников.
  2. Настраиваемая сложность атаки. В рамках обучения полезно иметь возможность регулировать сложность атаки и анализа полученных артефактов. 
  3. Реализация HighPro-атак. Практика показывает, что на киберполигоне красные редко раскрывают весь свой потенциал. С одной стороны, им необходимо беречь козырные инструменты и находки, с другой — экономить время. Поэтому для демонстрации сложных сценариев атак часто используются BAS-системы: в них любые техники воспроизводятся буквально в один клик.
  4. Полное покрытие техник и тактик атакующих. Ни одна красная команда не сможет покрыть сразу все возможные техники/тактики той же MITRE ATT&CK. При этом иногда синим нужно отрабатывать противодействие конкретным практикам атакующих — BAS-системы отлично справляются с подобными задачами.
Рисунок 6. Пример настраиваемой атаки в BAS-модуле Archer

Живой трафик vs синтетика: плюсы и минусы

Так что же выбрать киберполигону: живых хакеров в белых шляпах или систему для автоматизации атак?

Бесспорно, плюсом в пользу людей будет максимальный реализм во всем: от хронологического распределения действий атакующих до ошибок, которые они допускают. Реальные злоумышленники, как и красные команды, могут внезапно поменять тактику и отступить от намеченного плана, а BAS-система на это не способна. При этом мы всегда будем уверены в логической связности действий атакующих и в том, что они будут всеми силами подстраиваться под меняющуюся инфраструктуру. 

Минусы тоже будут! Живые атакующие не работают 24/7, у них разная квалификация и т. д. Скорее всего, у них также есть уникальный и узнаваемый стиль атаки, который они не смогут моментально поменять.

Говоря о сильных сторонах BAS-систем, можно отметить воспроизводимость атак и возможность гибко настраивать цепочки действий. Более того, подобные решения могут мимикрировать под реальные кибергруппировки и проводить атаки по аналогичным паттернам. Кроме того, BAS-система может постоянно пополняться экспертизой об актуальных методах атак любой сложности. А возможность неограниченно комбинировать техники идеально подходит не только для обучения ИБ-специалистов, но и для проверки эффективности СЗИ.

При этом BAS-решения тоже не лишены недостатков. Успех их работы напрямую зависит от эффективности настройки (с учетом всех нюансов конкретной инфраструктуры). При возникновении нештатной ситуации атака может быть прервана, и чтобы ее продолжить, потребуется полноценный перезапуск продукта. В целом ни одна автоматизированная система не проведет атаку так, как это сделает человек!

***

Мораль проста: системы эмуляции атак по-своему хороши, но людей они точно не заменят! В противостоянии живого трафика и синтетики побеждает взаимодополняемость ;)

Рисунок 7. Живой трафик и синтетика не заменяют, а взаимно дополняют друг друга

Мы дěлаем Positive Research → для ИБ-экспертов, бизнеса и всех, кто интересуется ✽ {кибербезопасностью}