Традиционная стратегия кибербезопасности фокусируется на защите. Активный переход на дистанционную работу с использованием удаленного и внедрение BYOD (Bring your own device) требуют переключения внимания на обнаружение и реагирование. В этом случае обязательно создание обороняющейся и атакующей команды.
Разница между Offensive и Defensive Security
Существование в компании Offensive security позволяет постоянно совершенствовать защиту, следуя модели «подразумевать взлом» (assume breach). Цель таких «войнушек» – найти слабые места и усилить их, а также сократить время реагирования до минимума.
В одних компаниях красная/синяя команда существуют на постоянной основе. Например, в Microsoft группа сотрудников занимается всесторонней проверкой устойчивости облачной платформы Azure. Что-то подобное есть в Google, McAfee и Tesla. В других компаниях такие команды собираются только на время учений; красная команда предоставляется сторонней организацией, которая на этом специализируется.
Defensive и Offensive security могут быть представлены не только синей и красной командой. Иногда атакует инфраструктуру только один пентестер, а защищает, например, аналитик кибербезопасности. В зависимости от размера и сферы деятельности компании, ей может быть достаточно только тестирования на проникновение, а может быть нужны и пентестеры, и красная команда (их цели различаются, об этом – ниже).
Каждая из команд должна состоять из специалистов, которые являются лучшими в разных направлениях, чтобы получить наиболее оригинальные решения и полноценную оценку. Красная команда, например, будет включать отдельного спеца по социальному инжинирингу, тестированию безопасности сетей и аудиту безопасности.
Рассказываем, какие навыки необходимы участникам каждой команды, и приводим примеры их взаимодействия.
Атакующие ребята
Offensive security может быть представлена в нескольких форматах. Вот некоторые из них:
Чаще всего путают деятельность красных команд (red teaming) и традиционный пентестинг, так как многие требуемые навыки и выполняемые командами тестеров функции совпадают, но цели и результаты их работы отличаются.
1. Цель пентестеров: поиск уязвимостей, чтобы оценить возможные риски. Цель Red teaming: с помощью целенаправленных атак понять, насколько хорошо защищена система, и подкованы в плане безопасности сотрудники.
2. У пентестеров есть стандартный набор техник для достижения целей: получение полномочий администратора домена, кража данных, проникновение во внутреннюю сеть и т. д. Красные команды используют индивидуальный для каждого случая набор техник и тактик.
3. В рабочий процесс пентестеров входит поиск уже известных уязвимостей, их анализ, а в ряде случаев и эксплуатация. Красные команды ищут в том числе угрозы нулевого дня (0-day) и пытаются использовать изъяны для компрометации исследуемого объекта
4. Время поиска. У пентестеров оно ограничено: от нескольких дней до пары недель, чтобы исключить ложноположительные сценарии. Red teams же не ограничены по времени.
5. Формат отчета. У красных команд он представляется в виде истории, а у пентестеров это может быть просто перечисление найденных уязвимостей.
Необходимые знания и навыки для участников Red team
Вам не обязательно подробно разбираться во всех этих направлениях. Достаточно понимать, как это все работает и быть мастером в чем-то одном. Навыки идут от более общим к более специализированным. Участнику красной команды необходимо:
- знание ландшафта угроз для отрасли организации-заказчика;
- понимание способов осуществления атак;
- креативное, неформальное мышление – нужно постоянно искать новые техники и инструменты;
- владение методами тестирования на проникновение;
- OSINT;
- владение методами имитации угрозы (threat emulation);
- умение создавать собственные эксплойты;
- навык осуществления физических атак, понимание физических средств защиты;
- навыки социальной инженерии;
Стек технологий:
- ОС и программные пакеты;
- разнообразные сетевые протоколы и алгоритмы;
- беспроводная связь;
- шифрование;
- Python, Ruby, Perl, PowerShell и др.;
- BAD USB;
- продвинутое системное администрирование и инженерия;
- пользовательские приложения, протоколы и другие технологии;
- сети;
- взлом замков (Lock picking).
Примеры задач
- любыми методами нарушить безопасность компании и получить информацию, проникнуть в систему или физически проникнуть на территорию организации. Вплоть до того, чтобы приехать в офис, представиться курьером и попроситься быстренько отнести посылку в нужный кабинет. Затем просто вставить флешку в ПК кого-то из сотрудников или даже менеджмента;
- избегать обнаружения синей командой;
- тестировать средства безопасности на проникновение;
- идентифицировать и использовать ошибки и слабые стороны инфраструктуры компании.
Обороняющие ребята
Defensive security может реализовываться в классическом формате работы отдела кибербезопасности компании. Если же это формат учений или непрерывного тестирования безопасности, то отдельно формируется синяя команда. Чаще всего она набирается из внутренних сотрудников. В отличие от стандартного отдела кибербезопасности, команда находится в постоянном ожидании атаки.
Как и красная команда, синие занимаются оценкой безопасности сети и идентифицируют возможные уязвимости. Делают они это другими способами. Усиливают безопасность, распознают, противодействуют и пытается ослабить красную команду. Синим нужно быстро реагировать на атаки противников, по возможности закрывать обнаруженные дыры и документировать результаты.
К defensive security относятся такие направления кибербезопасности, как security operations center (SOC), threat intelligence (TI), форензика, киберразведка и т. д.
Необходимые знания и навыки для Blue team
- умение искать и анализировать основные угрозы – здесь поможет OSINT;
- умение продумывать сценарии рисков;
- владение техниками и инструментами усиления безопасности;
- SIEM (Security Information and Event Management).
- аудит DNS;
- реверс-инжиниринг;
- анализ рисков;
- анализ цифровых следов;
- DDoS-тестирование;
- межсетевая защита;
- антивирусные программы;
- анализ логов;
- IDS (Intrusion detection system) и IPS (Intrusion Prevention System);
- pcap.
Вот примерный стек технологий синей команды:
Примеры задач
- определять критические объекты компании;
- проводить оценку рисков и приоритезировать их;
- внедрять меры, которые будут направлены на усиление слабых мест и, в то же время, будут экономически обоснованными;
- проверять работают ли существующие меры безопасности так, как должны. Если SIEM молчит, то это не значит, что там нет противников. Система может быть плохо настроена, а видимость нарушена;
- отслеживать подозрительный трафик и распознавать индикаторы нарушений;
- понимать, в какой фазе находится инцидент и предпринимать соответствующие меры;
- быстро пресекать любые попытки компрометации. В случае обнаружения сохранять и проверять улики, определять тип инцидента (может понадобиться привлечение другого отдела или правоохранительных органов), охватывать нарушение, исправлять уязвимость;
- выявлять подключения участников красной команды и блокировать их.
Вот так выглядит процесс:
Взаимодействие красной и синей команды
Цель красной команды – улучшать синюю. В случае, если коммуникация между командами отлажена, они помогают друг другу и есть положительные результаты работы, то их взаимодействие ограничивается следующими пунктами:
- работой над окончательным отчетом после проверки какого-то из объектов;
- планированием и разработкой новых решений по усилению защиты;
- обменом знаниями: синие рассказывают о новых технологиях защиты, а красные – о новых угрозах и техниках пентеста.
Иногда может понадобиться создание фиолетовой команды (purple team). Она работает над эффективностью обеих команд и обычно состоит из их же участников. Фиолетовая команда представляет собой интенсивную временную совместную работу красных и синих – это своеобразный тренинг.
Пример коммуникации красной и синей команды:
Задачи фиолетовой команды:
1. Установить лучшее понимание инфраструктуры обеих команд.
2. Закрепить практику регулярной обратной связи.
3. Дать возможность обеим командам изучать процесс работы друг друга. Красной команде – как лучше воздействовать на существующие тактики защиты, а синей – как совершенствовать смягчение последствий атаки и охоту за злоумышленниками.
4. Анализировать результаты и принимать меры. Например, более полное обучение сотрудников.
Примеры red teaming
1. Получение административного доступа к Active Directory. Кейс от Group-IB.
Была взломана одна из дочерних компаний группы и обнаружен VPN между локальными сетями подразделений. Подключение к сети было хорошо защищено. Команда применила атаку Kerberos «golden ticket», чтобы обойти защиту с помощью смарт-карт на «низком уровне». Используя механизм доверия между доменами Active Directory, команда получила администраторские права в головном офисе.
2. Тестирование с помощью социальной инженерии. Кейс от QCC Global.
Проводились фишинговые атаки для сбора пользовательских данных. Также участники красной команды звонили сотрудникам, в том числе из отдела IT-поддержки, и пытались получить от них конфиденциальную информацию. 80% попыток были успешными.
Не называя имен QCC Global предоставила отчет, а также составила план индивидуального обучения для сотрудников на основе найденных пробелов. Через год был проведен ретест, который показал значительные улучшения. Команда QCC Global использовала те же методы и получила гораздо меньше доступов.
3. Сценарии киберучений от BI.ZONE, они же предоставляют красную команду.
1) Атакующая команда хочет украсть конфиденциальные данные клиентов.
Действия синей команды во время инцидента: пресечь атаку как можно скорее, минимизировать украденную информацию и поддерживать работоспособность сервиса.
2) Преступники получили привилегированный доступ с помощью фишинговой атаки.
Расследование синей командой уже произошедшего инцидента:
- Был зафиксирован запрос в центр командования и управления. Синяя команда получила данные о каком-то из скомпрометированных хостов: дамп памяти, журнал событий и др. Действия синей команды: использовать методы и инструменты компьютерной форензики.
- Такой же инцидент, но другие индикаторы компрометации. Агенты EDR собирают телеметрию и посылают на Threat hunting платформу. Там собранные данные анализируются и идентифицируется аномальная активность. Действия синей команды: охота на угрозы (Threat Hunting approach).
В результате двух раундов для правоохранительных органов должно быть сформировано досье на эти происшествия.
Как выбрать команду?
Если вы так и не определились с направлением, то вот несколько вариантов, которые в этом помогут.
1. Поучаствовать в attack/defense CTF. В этом типе соревнования ваша команда будет одновременно и атаковывать приложения других команд и защищать свои. Примеры таких конкурсов можно найти здесь.
2. Попробовать свои силы в ежегодной кибербитве the Stand Off. Виртуальный город, который включает в себя все реальные технологии и уязвимости банков, офисов, мобильных операторов, транспортных систем, промышленных объектов, спортивной инфраструктуры и т. д.
Заключение
Чтобы успешно работать на стороне команды защиты или нападения, вам все равно нужно понимать техники противника. Чтобы хорошо защищать, нужно знать способы атаки, и наоборот: ваши атаки будут гораздо более результативными, если вы хорошо осведомлены об инструментах и техниках защиты.
Хочу научиться программировать с нуля, но не знаю, с чего начать. Что делать?
Можно учиться самостоятельно (долго) или пойти на курсы с преподавателями (быстро). Плюс нужно учитывать, что джунов много, конкуренция выше и работодатели повышают порог вхождения при найме на работу. Чтобы получить актуальные знания, мы в proglib.academy запустили курсы:
- Основы программирования на Python.
- Профессия Python-разработчик.
- Алгоритмы и структуры данных.
- Математика для Data Science.
- Профессия Data Science.
- Frontend Basic: принцип работы современного веба.
- Профессия Фронтенд-разработчик.
- Обработка естественного языка. Полный курс.
На подходе еще больше 10 курсов для взрослых и детей.
Комментарии