Red Teaming: планирование проекта, модели и сценарии

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


Типы работ


Red Teaming имеет множество разных форм, но можно выделить три основных типа.

«Настольные упражнения». Это теоретические поиски без проведения каких-либо активных атак, так сказать, размышления о вечном на тему «а что будет, если» или, как это официально именуют, «штабные киберучения». Такие упражнения требуют некоторых вводных данных: это могут быть предположения, основанные на реальных угрозах или результатах работы утилит по сбору информации, например, Bloodhound . Сегодня к такому типу работ интерес весьма нишевый, но он может появиться в рамках Purple Team, т.е. при совместных действиях команды атакующих и защитников.

Военные игры (War Games). Данный вид Red Teaming проводится в искусственной среде полигона. Как пример можно привести «Standoff» конференции Positive Hack Days. В таких упражнениях есть ряд преимуществ: можно выполнять почти любые действия без реального вреда инфраструктуре. Но есть и недостаток – он заключается в искусственности среды, а именно в отсутствии живых людей и человеческого фактора, при этом сами недостатки и уязвимости закладываются организаторами и разработчиками такого полигона.

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

Симуляция или имитация


Сообщество «offensive и defensive security» спорит на предмет того, чем является Red Teaming — имитацией или симуляцией.

Имитация — это уподобление, подражание кому-то или чему-то. При имитации действий нарушителя команда Red Team воспроизводит, повторяет атаки какого-либо нарушителя, например, APT-группы, и делает это без импровизаций.

Если организация желает провести имитацию атак какой-нибудь APT-группировки, она сообщает об этом на первой встрече. Далее команда Red Team изучает TTP (тактики, техники и процедуры) этой группировки (если, конечно, есть такая аналитика) и пошагово «выполняет» все действия. Плюсом таких работ является отсутствие необходимости в долгой подготовке и планировании: команда Red Team не будет ничего менять в сценарии и использует те же инструменты и утилиты, что и APT-группировка. А большим минусом является то, что IoC (индикаторы компрометации) этой группировки уже известны, а значит, сценарий работ нужно корректировать (например, атакующие могут использовать те же утилиты, но изменить тактику, пойти другими путями). Если в такой ситуации Red Team останется незамеченной, то возникает вопрос, почему команда защиты просмотрела известные IoC и не настроила реагирование систем безопасности на такие события.

Симуляция – это воспроизведение атаки так, чтобы все выглядело по-настоящему, но опять же без реального ущерба для организации. При симуляции команда атакующих действует по своему усмотрению, основываясь на собственном опыте проведения Red Teaming или на показателях эффективности самых популярных в мире техник. Могут использоваться собственные разработки или TTP, которые позволят достигнуть целей, независимо от того, какая APT-группировка их применяет.

Таким образом, Red Teaming может проводиться как в виде симуляции (и проверять готовность команды защиты к обнаружению новых атак и новых TTP), так и в виде имитации (здесь проверяется готовность отражать атаки известных APT-групп). Выбор зависит от целей и желания заказчика. От этого же зависит ход выполняемых работ.

Модели нарушителя


Можно подумать, что модель нарушителя — это термин из области так называемой бумажной безопасности. Однако для Red Team это действительно важная информация, т.к. она влияет на создание сценария. В Red Teaming существует три модели нарушителя:

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

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

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

Выбранная модель нарушителя будет определять начальную точку проекта Red Teaming и весь дальнейший сценарий.

Сценарии


Сценарии управляют миром проведением Red Teaming. В некотором смысле сценарий определяется моделью нарушителя и целью, которая дает начальный толчок к старту проекта.
Можно выделить следующие типы сценариев, различающиеся отправными точками и векторами проводимых атак:

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

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

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

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

В некоторых случаях отправные точки сценариев могут быть реализованы в виде предполагаемого нарушения. Это означает, что организация допускает, что злоумышленник уже успешно выполнил некоторые шаги и способен получить доступ в какой-либо сегмент внутренней сети, DMZ или сегмент беспроводной сети.

Например, команде атакующих могут быть предоставлены:

• доступ к удаленной машине (якобы полученный с помощью запуска «вредоносного» документа, содержащего полезную нагрузку для подключения к командному центру С2);
• пароль для подключения к беспроводной сети;
• рабочее место для имитации действий инсайдера.

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

Поэтому особенно важно обсуждение и согласование всех этих моментов на первоначальных встречах, связанных с планированием Red Teaming.

Примеры сценариев


Сценарий для компании, производящей программное обеспечение
Сценарий предполагает, что команда Red Team является группой хакеров государства X. Группе поручено получить доступ и внести изменения в исходный код ПО, разрабатываемого организацией Z, для получения возможности несанкционированного доступа к компьютерам пользователей этого ПО и осуществления слежки. Главным разработчиком компании Z является Иванов Иван. В ходе Red Teaming идет поиск потенциальных векторов атак на компьютер Иванова Ивана, собирается вся информация о нем, данные о сервисах, которые он использует. Далее «злоумышленники» пытаются пробраться на его компьютер, чтобы потом скомпрометировать исходный код ПО.

Сценарий для банка
Сценарий основывается на предполагаемом нарушении с использованием методов социальной инженерии. Команда Red Team имитирует действия неизвестной группы киберпреступников, которые рассылают фишинговые письма компаниям финансового сектора. Цель злоумышленников – получить доступ к финансовой информации организации и возможность переводить денежные средства на другие счета, а также доступ к информации по кредитным картам клиентов. В ходе предполагаемого нарушения сотрудник организации открывает вложение с исполняемой нагрузкой, которая предоставляет злоумышленникам доступ к внутренней сети.

Вместо заключения


В целом Red Teaming – весьма «творческая» услуга в части не только сценариев, но и форматов обучения Blue Team и оценки общего уровня защищенности. Однако, повторюсь, все это требует определенной подготовительной работы со стороны заказчика – ведь для составления правильного сценария атак Red Team должна понимать, какие риски организация рассматривает, и проверить, как на их реализацию отреагируют защитники. Например, в модели рисков может быть прописана угроза от подрядчиков, и тогда потребуется не только задействовать этот вектор в ходе Red Teaming, но и заблаговременно согласовывать такие работы с самим подрядчиком. И подобные «рутинные детали», которые нужно продумать и учесть еще «на берегу», есть фактически в каждом сценарии. Поэтому качественный Red Teaming – всегда совместная заслуга заказчика и исполнителя.

Дмитрий Неверов, эксперт по анализу защищенности, «Ростелеком-Солар»
Alt text

Подписывайтесь на каналы "SecurityLab" в TelegramTelegram и TwitterTwitter, чтобы первыми узнавать о новостях и эксклюзивных материалах по информационной безопасности.