Task 1. Введение
Кибербезопасность - это постоянная гонка между белыми хакерами и черными хакерами. По мере развития угроз в киберпространстве растет и потребность в более специализированных услугах, которые позволяют компаниям наилучшим образом подготовиться к реальным атакам.
Хотя обычные мероприятия по обеспечению безопасности, такие как оценка уязвимостей и тестирование на проникновение, могут дать отличное представление о технической защите компании, они могут упустить многие другие аспекты, которыми может воспользоваться реальный злоумышленник. Исходя из этого можно сказать, что обычное тестирование на проникновение хорошо показывает уязвимости, чтобы вы могли принять проактивные меры, но не никак не дать полного объяснения, как реагировать на реальную атаку опытного противника.
План главы:
Узнать о задачах возлагаемых на Red Team
Определить заинтересованные стороны, участвующие в работе Red Team
Понять основные различия между Red Team командой и другими видами мероприятий по кибербезопасности
Task 2. Оценка уязвимостей и ограничения при проведении пентеста
Оценка уязвимостей
Это самая простая форма оценки безопасности, и ее основная цель - выявить как можно больше уязвимостей в как можно большем количестве систем в сети. Для эффективного достижения этой цели можно пойти на уступки. Например, машина атакующего может быть внесена в список разрешенных доступных решений безопасности, чтобы не мешать процессу обнаружения уязвимостей. В этом есть смысл, так как цель состоит в том, чтобы рассмотреть каждый узел в сети и оценить его уровень безопасности в отдельности, предоставляя при этом компании максимум информации о том, на чем следует сосредоточить усилия по устранению уязвимостей.
Подводя итог, можно сказать, что оценка уязвимостей направлена на сканирование узлов как отдельных объектов с целью выявления уязвимостей, чтобы можно было выявить недостатки безопасности и развернуть эффективные меры безопасности для защиты сети в приоритетном порядке. Большая часть работы может быть выполнена с помощью автоматизированных инструментов, не требуя особых технических знаний.
Например, если бы вы проводили оценку уязвимостей в сети, то старались бы просканировать как можно больше узлов, но не пытались бы использовать уязвимости вообще:
Compromised Host - Скомпроментированные хосты
Scanned Host - Сканированные хосты
Pentester - Пентестер
Internet - Интернет
Internal Users Network - Внутренняя сеть пользователей
Public Servers - Публичные сервера
Тестирование на проникновение
Помимо сканирования каждого узла на наличие уязвимостей, нам зачастую необходимо понять, как они влияют на нашу сеть в целом. Тестирование на проникновение дополняет метод оценки уязвимостей, позволяя исследователю изучить влияние злоумышленника на сеть в целом, выполняя дополнительные действия, которые включают:
Попытка использовать уязвимости, найденные в каждой системе. Это важно, поскольку иногда уязвимость может существовать в системе, но имеющиеся компенсационные средства управления эффективно предотвращают ее использование. Это также позволяет нам проверить, можем ли мы использовать обнаруженные уязвимости для компрометации данного узла.
Проведение пост-эксплуатационных задач на любом скомпрометированном узле позволяет нам выяснить, можем ли мы извлечь из них какую-либо полезную информацию или использовать их для перехода к другим узлам, которые ранее были недоступны с того места, где мы находились.
Тестирование на проникновение может начинаться со сканирования на наличие уязвимостей, как и обычная оценка уязвимостей, но оно предоставляет дополнительную информацию о том, как злоумышленник может использовать уязвимости для достижения конкретных целей. Хотя основное внимание по-прежнему уделяется выявлению уязвимостей и принятию мер по защите сети, при этом рассматривается сеть как целая экосистема и то, как злоумышленник может извлечь выгоду из взаимодействия между ее компонентами.
Если бы мы проводили тест на проникновение, используя тот же пример сети, что и раньше, помимо сканирования всех узлов сети на наличие уязвимостей, мы бы попытались подтвердить, можно ли их использовать, чтобы показать, какое влияние злоумышленник может оказать на сеть:
Compromised Host - Скомпроментированные хосты
Scanned Host - Сканированные хосты
Pentester - Пентестер
Internet - Интернет
Internal Users Network - Внутренняя сеть пользователей
Public Servers - Публичные сервера
Compromised WWW server using SQLi - Компроментация сервера WWW с использованием SQL инъекций
Pivoted to AlicePC using weak credentials - Пивотинг и доступ к компьютеру AlicePC с использованием слабых данных авторизации
Compromised FTP with known exploit - Компроментация FTP с использованием известного эксплойта
Анализируя, как злоумышленник может перемещаться по нашей сети, мы также получаем базовое представление о возможных обходах мер безопасности, и наша способность обнаружить реального субъекта угрозы в определенной степени ограничена, поскольку объем тестирования на проникновение обычно обширен, а пентестеры не особо заботятся о том, чтобы быть не быть громкими или не генерировать множество предупреждений на устройствах безопасности, поскольку такие проекты часто ограничены по времени и требуют, чтобы пентестеры проверили сеть за короткое время.
Развитая устойчивая угроза (APT) и почему регулярного пентеста недостаточно
Несмотря на то, что обычные мероприятия по обеспечению безопасности, о которых мы упоминали, охватывают поиск большинства технических уязвимостей, существуют ограничения на такие процессы и степень, в которой они могут эффективно подготовить компанию против реального злоумышленника. К таким ограничениям относятся:
Time Constraints - Ограничения по времени
Budget - Бюджет
Limited Scope - Ограниченная область
Non-disruptive - Неразрушительный
Heavy IT focus - Сильная ориентация на ИТ
Как следствие, некоторые аспекты тестирования на проникновение могут значительно отличаться от реальной атаки, например:
Тестирования на проникновение очень шумны: Обычно пентестеры не прилагают много усилий, чтобы остаться незамеченными. В отличие от настоящих злоумышленников, они не задумываются о вопросах анонимности, так как по контракту они должны найти как можно больше уязвимостей на как можно в большем количестве узлов.
Нетехнические векторы атак могут быть упущены: Атаки, основанные на социальной инженерии или физическом вторжении, обычно не включаются в тестирование.
Ослабление механизмов безопасности: При проведении обычного теста на проникновение некоторые механизмы безопасности могут быть временно отключены или ослаблены для команды пентестеров в пользу эффективности их работы. Хотя это может показаться нелогичным, важно помнить, что у пентестеров ограниченное время на проверку сети. Поэтому обычно желательно не тратить время на поиск экзотических способов обхода IDS/IPS, WAF или других мер безопасности, а сосредоточиться на проверке критической технологической инфраструктуры на наличие уязвимостей.
С другой стороны, настоящие злоумышленники не придерживаются этических норм и правил и в основном не ограничены в своих действиях. В настоящее время наиболее известные субъекты угроз известны как Advanced Persistent Threats (APT), которые представляют собой высококвалифицированные группы злоумышленников, обычно спонсируемые государствами или организованными преступными группировками. В первую очередь они атакуют критически важную инфраструктуру, финансовые организации и правительственные учреждения. Их называют постоянными, потому что операции этих групп могут оставаться незамеченными во взломанных сетях в течение длительного времени.
Если компания пострадает от APT, будет ли она готова к эффективному реагированию? Смогут ли они обнаружить методы, используемые для получения и поддержания доступа к их сетям, если злоумышленник находился там в течение нескольких месяцев? Что если первоначальный доступ был получен из-за того, что Джон из бухгалтерии открыл подозрительное вложение в электронном письме? Что если был задействован эксплойт нулевого дня? Готовят ли нас к этому предыдущие тесты на проникновение?
Task 3. Обязательства Red Team команд
Чтобы не отставать от возникающих угроз, участие Red Team было разработано для того, чтобы сместить акцент с обычных тестов на проникновение на процесс, который позволяет нам четко увидеть возможности нашей синей команды в обнаружении и реагировании на реального субъекта угрозы. Они не заменяют традиционные тесты на проникновение, а дополняют их, фокусируясь на обнаружении и реагировании, а не на предотвращении.
Red Team - это термин, заимствованный у военных. На военных учениях группа берет на себя роль Red Team, имитируя методы атаки, чтобы проверить способность защищающейся команды, обычно известной как Blue Team, реагировать на известные стратегии противника. В переводе на мир кибербезопасности, участие Red Team заключается в имитации тактики, техники и процедур (TTP) реального субъекта угроз, чтобы мы могли оценить, насколько хорошо наша Blue Team реагирует на них, и в конечном итоге улучшить все имеющиеся средства контроля безопасности.
Каждое взаимодействие красной команды начинается с определения четких целей, часто называемых "коронными"(crown jewels) или "флажковыми"(flags), начиная от компрометации определенного критически важного узла и заканчивая кражей конфиденциальной информации у цели. Обычно синяя команда не информируется о таких учениях, чтобы избежать предвзятости в их анализе. Красная команда будет делать все возможное для достижения поставленных целей, оставаясь незамеченной и обходя все существующие механизмы безопасности, такие как брандмауэры, антивирусы, EDR, IPS и другие. Обратите внимание, что при участии красной команды не все узлы в сети проверяются на наличие уязвимостей. Настоящему злоумышленнику нужно найти только один путь к своей цели, и он не заинтересован в проведении шумного сканирования, которое может быть обнаружено синей командой.
Если взять ту же сеть, что и раньше, то при взаимодействии с красной командой, целью которой является взлом сервера внутренней сети, мы будем планировать способ достижения цели, как можно меньше взаимодействуя с другими узлами. Тем временем можно оценить возможности синей команды обнаружить атаку и отреагировать на нее соответствующим образом:
Compromised Host - Скомпроментированные хосты
Scanned Host - Сканированные хосты
Pentester - Пентестер
Internet - Интернет
Internal Users Network - Внутренняя сеть пользователей
Public Servers - Публичные сервера
Compromised BobPC with phishing campaign - Компрометация компьютера BobPC с помощью фишинговой кампании
Accessd Intranet with credentials found on Bob`s email - Доступ в интранет с учетными данными, найденными в электронной почте Боба
Logs - Логи
Важно отметить, что конечная цель таких учений не должна заключаться в том, чтобы "красная" команда "победила" "синюю", а в том, чтобы смоделировать достаточно ТТП, чтобы "синяя" команда научилась адекватно реагировать на реальную текущую угрозу. При необходимости они могут подкорректировать или добавить средства контроля безопасности, которые помогут улучшить их возможности обнаружения.
Участие "красной команды" также улучшает обычные тесты на проникновение, поскольку учитывает несколько поверхностей атаки:
Техническая инфраструктура: Как и в обычном тесте на проникновение, "красная команда" будет пытаться обнаружить технические уязвимости, уделяя при этом больше внимания скрытности и уклонению
Социальная инженерия: Нацеливание на людей с помощью фишинговых кампаний, телефонных звонков или социальных сетей, чтобы обманом заставить их раскрыть информацию, которая должна быть конфиденциальной
Физическое проникновение: Использование таких методов, как взлом замков, клонирование RFID, использование слабых мест в электронных устройствах контроля доступа для получения доступа в закрытые зоны объектов
В зависимости от имеющихся ресурсов, учения "красной команды" могут проводиться несколькими способами:
Полное участие: Имитация полного рабочего процесса злоумышленника, начиная с первоначальной компрометации и заканчивая достижением конечных целей
Предполагаемое проникновение: Начните с предположения, что злоумышленник уже получил контроль над некоторыми активами, и попытайтесь достичь целей, начиная с этого момента. Например, "красная команда" может получить доступ к учетным данным какого-либо пользователя или даже к рабочей станции во внутренней сети
Настольное упражнение (Table-top Exercise): Симуляция за столом, где сценарии обсуждаются между красной и синей командами, чтобы оценить, как они теоретически будут реагировать на определенные угрозы. Идеально подходит для ситуаций, когда проведение живого моделирования может быть затруднено
Task 4. Команды и функции ролей их участников в процессе мероприятия
В работе Red Team задействовано несколько факторов и людей. У каждого будет свой образ мышления и своя методология подхода к персоналу, однако каждое задание можно разбить на три команды или ячейки. Ниже приведена краткая таблица, иллюстрирующая каждую из команд и краткое объяснение их обязанностей.
Команда | Определение | |
Красная ячейка | Компонент, составляющий наступательную часть действий Red Team, которая имитирует стратегические и тактические действия данной цели. | |
Синяя ячейка | Является противоположной стороной красной ячейке. Она включает в себя все компоненты, защищающие целевую сеть. Она обычно состоит из членов синей команды, защитников, внутреннего персонала и руководства организации. | |
Белая ячейка | Служит в качестве посредника между действиями красной ячейки и реакцией синей ячейки в процессе мероприятия. Контролирует обстановку/сеть в ходе операции. Контролирует соблюдение ROE. Координирует действия, необходимые для достижения целей операции. Соотносит действия красной ячейки с оборонительными действиями. Обеспечивает беспристрастное проведение мероприятия. |
Эти команды или ячейки могут быть разбиты далее на приведенную ниже иерархию.
White Cell - Белая ячейка
Trusted Agent - Доверенное лицо
Red Cell Lead - Лидер красной ячейки
Red Cell Assistant Lead - Помощник руководителя красной ячейки
Red Cell Operators - Операторы красной ячейки
Red Cell - Красная ячейка
Blue Cell Lead - Лидер синей ячейки
Blue Cell Analysts - Аналитик синей ячейки
Blue Cell - Синяя ячейка
Ниже приведена таблица, в которой указаны роли и обязанности членов красной команды.
Роль | Назначение | |
Лидер красной ячейки | Планирует и организует участие в мероприятиях на высоком уровне - делегирует поручения, дает задания помощнику руководителя и операторам. | |
Помощник руководителя красной ячейки | Помогает руководителю группы в контроле за операциями и операторами. При необходимости может также помогать в составлении планов и документации. | |
Оператор красной ячейки | Выполняет задания, делегированные руководителями групп. Интерпретирует и анализирует планы участия, полученные от руководителей групп. |
Как и большинство функций Red Team, каждая команда и компания будет иметь свою собственную структуру и роли для каждого члена команды. Приведенная выше таблица служит лишь примером типичных обязанностей каждой роли.
Task 5. Структура взаимодействия
Основной функцией Red Team является эмуляция противника. Хотя это и не является обязательным, но обычно используется для оценки того, что реальный противник будет делать в той или иной среде, используя свои инструменты и методологии. Red Team может использовать различные цепочки атак для обобщения и оценки этапов и процедур взаимодействия.
Blue Team обычно использует цепочки атак для составления схемы поведения и разрушения движения противника. Red Team может адаптировать эту идею для составления схемы TTP противника к компонентам действий.
Многие органы регулирования и стандартизации выпустили свои цепочки атак. Каждая цепочка атак имеет примерно одинаковую структуру, но некоторые из них более глубокие или по-другому определяют цели. Ниже приведен небольшой список стандартных цепочек киберударов.
Lockheed Martin более стандартизированная цепь атак, чем другие, и очень часто используется среди Red Team и Blue Team.
Цепочка атак Lockheed Martin фокусируется на периметре или внешнем нарушении. В отличие от других цепочек атак, она не дает углубленного анализа внутренних перемещений. Вы можете рассматривать эту цепь атак как сводку всех присутствующих моделей поведения и операций.
Recon - Разведка
Weaponisation - Подготовка необходимых инструментов, генерация полезной нагрузки
Delivery - Доставка
Exploitation - Эксплуатация
Installation - Установка
Command & Control - Командование и контроль (С2 Сервер)
Actions on Objectives - Действия по целям
Компоненты цепочки атак представлены в таблице ниже.
Техника | Назначение | Пример |
Разведка | Получение информации о цели | Сбор электронных писем, OSINT |
Подготовка инструментов, полезной нагрузки | Объединение цели с эксплойтом. Обычно приводит к созданию полезной нагрузки | Эксплойт с бэкдором, вредоносный офисный документ |
Доставка | Как результат этапа подготовки будет доставлен к цели | Электронная почта, веб, USB |
Эксплуатация | Эксплуатация системы цели для выполнения кода | MS17-010, Zero-Logon и т.д. |
Установка | Установка вредоносного ПО или других инструментов | Mimikatz, Rubeus и т.д. |
Командование и контроль (С2 Сервер) | Управление взломанным объектом с удаленного центрального контроллера | Empire, Cobalt Strike и т.д. |
Действия по целям | Любые конечные цели: ransomware, эксфильтрация данных и т.д. | Conti, LockBit2.0 и др. |