Вопрос или проблема
Мы в процессе разработки команды Red Teaming, которую хотим предложить в качестве услуги, и одной из самых больших проблем, с которой мы сталкиваемся, является поддержание хорошей оперативной безопасности и скрытности во время выполнения заданий.
Поскольку большая часть опыта нашей команды связана с тестированием на проникновение, где можно использовать громкие инструменты и сканирования, не беспокоясь о выявлении, мы ищем методологии, которые были бы сосредоточены на скрытности во время выполнения заданий.
У нас есть несколько методологий, разработанных на протяжении многих лет о том, как подойти к внутренней инфраструктуре или тестированию веб-приложений, которые действительно упрощают процесс тестирования, поскольку вы знаете, как начать и что не забыть. Но для скрытных заданий Red Teaming, где главная цель – избежать обнаружения, мы даже не знаем, с чего начать – особенно учитывая все более продвинутый характер инструментов обнаружения, с которыми мы сталкиваемся.
Большинство методологий или ресурсов, которые я нашел до сих пор, или слишком общие, или не выдерживают проверку EDR, что приводит меня к этому вопросу.
Существуют ли методологии Red Teaming, которые предоставили бы нам отправную точку и познакомили бы нас с мышлением, необходимым для успешного скрытного задания Red Teaming? Что-то похожее на руководство по тестированию веб-приложений от OWASP – которое дает вам список вещей, на которые стоит обратить внимание, или набор инструментов, которые вам нужны.
Например, если мы возьмем фазу разведки – в традиционном объявленном тесте на проникновение вы можете просто использовать nmap для сканирования всей сети, запустить Nessus, и у вас будет довольно хорошая отправная точка. Но для Red Teaming вы не можете этого сделать. Я ищу методологию, которая расскажет, как начать проводить скрытую разведку, какие настройки стоит учитывать в скрытом сканировании nmap или какие другие конкретные техники или инструменты использовать для начала разведки, а также некоторые другие рекомендации для обеспечения успеха, т.е. иметь лабораторию с EDR и сначала попробовать каждое действие там или консультироваться по каждому действию с вашим SoC.
Существуют ли такие ресурсы, или мы почти что одни и должны разгадать это сами?
Раз вы упоминаете nmap и это часто является основным инструментом разведки: хотя он по своей природе шумный, есть много опций, которые вы можете использовать, чтобы быть более скрытным.
Будьте терпеливыми. Наверное, это единственная обобщенная рекомендация, которую можно здесь сделать. Не сканируйте несколько хостов одновременно. Это явный признак. Распределите свои сканирования во времени. См. Время и производительность.
Одна полезная опция среди множества других: -sS
, чтобы выполнить SYN-сканирование. Это обычно достаточно для рутинной разведывательной работы. Хотя эта опция одна может не избежать обнаружения, её можно (и нужно) комбинировать с другими техниками.
Документация nmap содержит целую главу по этой теме: Глава 10. Обнаружение и подрыв межсетевых экранов и систем обнаружения вторжений (обратите внимание, что в книге, как правило, больше содержания, чем на официальном сайте, так что я определенно рекомендую купить книгу).
Затем измените вашу подпись, чтобы трафик не выделялся. Пример: используйте дополнение данных – см. Обход межсетевых экранов/IDS и подделка для предложений. Идея состоит в том, чтобы сделать ваши полезные нагрузки отличающимися от известных паттернов обследования, чтобы межсетевые экраны или IDS не блокировали их.
Я также рекомендую попрактиковаться в Wireshark, чтобы захватывать и анализировать некоторый ваш трафик. Начните с захвата пакетов, относящихся к использованию nmap, чтобы выяснить, как выглядят текущие кадры. Затем используйте некоторые из предложенных выше опций, чтобы изменить их, чтобы они начали выглядеть менее подозрительно.
Вам нужно будет быть более сосредоточенными в ваших атаках. Сосредоточьтесь на определенных портах, где вы думаете, что есть потенциал для эксплуатации. Например, начните с HTTP(s) конечных точек, затем расширяйте сеть по мере необходимости.
Чтобы избежать сканирования всего диапазона сети, вы можете попытаться заранее составить список хостов, используя доступные данные DNS, обратный DNS или другие источники, такие как журналы прозрачности сертификатов, где это применимо.
Nmap – это отличный инструмент, но это не единственный доступный сканер портов. На самом деле, вы даже можете использовать Scapy, чтобы создать свой собственный, с преимуществом, что у вас будет почти полный контроль над сетевыми кадрами, которые будут выходить из вашего компьютера.
Создайте лабораторию, установите Surricata или другой IDS, такой как Snort, и узнайте, какое поведение вызывает предупреждение, используя настройки по умолчанию. Это будет хорошим началом.
Если вы можете получить информацию о том, что использует клиент/цель (программное и аппаратное обеспечение), то получите соответствующую документацию, чтобы понять, как они работают из коробки.
Вот одна статья, которая обсуждает обнаружение сканирований nmap с помощью Snort: Как обнаружить сканирование NMAP с помощью Snort. Вы должны быть в состоянии найти подобную информацию о других типах IDS, в противном случае изучите набор правил по умолчанию, и вы сможете найти способы их обхода. Опять же, документация nmap более детализированно описывает техники и обсуждает, как обойти обнаружение Snort: Подрыв систем обнаружения вторжений (содержимое устарело, но концепции остаются действительными).
Ответ или решение
Методы Red Teaming, ориентированные на операционную безопасность (оп-сек) и скрытность
Разработка Red Teaming команды требует тщательного подхода к методам, использующимся для обеспечения операционной безопасности и минимизации риска обнаружения. Прежние навыки в области тестирования на проникновение, где использование громоздких инструментов приемлемо, не всегда применимы к stealth-об engagements. В этой статье мы рассмотрим методологии, которые помогут вашей команде начать работать в этом направлении.
Основные этапы Red Teaming с акцентом на скрытность
-
Рекогносцировка:
- Используйте пассивные методы сбора информации. Такие техники, как анализ публичных записей, данных DNS, и сертификатов, позволят вам получить информацию без активного сканирования.
- Если необходимо использовать активные методы, настраивайте Nmap для плавного сканирования. Используйте опции, такие как
-sS
для SYN-сканирования, и настраивайте параметры времени для медленного и безопасного сканирования (-T0
или-T1
). - Вместо того, чтобы сканировать целый диапазон IP, создайте предварительно составленный список хостов с помощью DNS, обратного DNS или других источников, таких как журналы прозрачности сертификатов.
-
Расширенное сканирование и анализ уязвимостей:
- Для скрытных анализов используйте персонализированные скрипты с помощью Scapy, что даст вам контроль над сетевыми фреймами.
- Занимайтесь приоритизацией портов: сосредоточьтесь на наиболее уязвимых службах, таких как HTTP(S).
- Обычно стоит протестировать существующие IDS и EDR в вашем экспериментальном лабораторном окружении. Установите такие инструменты, как Suricata или Snort, и проведите анализ трафика, чтобы понять, какие действия приводят к срабатыванию сигнализации.
-
Эксплуатация:
- При эксплуатации уязвимостей, используйте менее узнаваемые и нестандартные инструменты и тактики. Попробуйте избегать использования стандартных лишь по умолчанию инструментариев, таких как Metasploit. Вместо этого создайте свои собственные эксплойты или используйте менее известные инструменты.
- Имейте в виду методики подмены сигнатур. Это может включать изменение заголовков пакетов или использование данных для заполнения, чтобы сбить с толку системы обнаружения.
-
Этап обратной связи и завершение задания:
- Всегда обеспечьте обратную связь с командой безопасности клиента (Security Operations Center – SoC) по результатам ваших тестов. Это помогает в дальнейшей адаптации вашей тактики.
- Разработайте отчетность о каждом этапе, чтобы иметь возможность корректировать ваши методы в будущем, исходя из анализа сработавших сигналов и рекомендаций.
Ресурсы и обучение
- Практика. Создайте лабораторное окружение. Используйте наиболее актуальные версии EDR и IDS для тестирования ваших методик.
- Обучающие материалы. Рекомендуем ознакомиться с литературой, такой как мануал по Nmap и другие специализированные документы по методам скрытного анализа и обхода IDS.
- BloodHound и других открытых инструментах для анализа взаимосвязей и снижения объема работы при внешнем расследовании.
- Объединяйтесь с сообществом Red Teaming и участвуйте в семинарах или форумах, чтобы обмениваться опытом и наработками.
Заключение
В то время как многие аспекты Red Teaming требуют будущих знаний и практики, формирование эффективной команды с акцентом на скрытность предоставит вам конкурентное преимущество. Соблюдение принципов оперативной безопасности и постоянное обучение будут ключевыми факторами успеха в этой области. Использование описанных методик, инструментов и технологий поможет вашей команде эффективно преодолевать барьеры обнаружения, создавая надежную и управляемую операционную среду.