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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

***

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

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

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