
Скриптовый фреймворк для симуляции более 50 техник MITRE ATT&CK с целью проверки возможностей синей команды по обнаружению. Включает Python-скрипты и скомпилированный бинарный файл для внедрения процессов, симуляции беконов и эмуляции бокового перемещения.
RTA предоставляет фреймворк скриптов, предназначенных для того, чтобы команды синих могли тестировать свои возможности обнаружения в отношении вредоносных тактик, смоделированных по образцу MITRE ATT&CK.
RTA состоит из скриптов Python, которые генерируют свидетельства более 50 различных тактик ATT&CK, а также скомпилированного бинарного приложения, выполняющего такие действия, как подделка временных меток файлов, внедрение процессов и симуляция beacon при необходимости.
Там, где это возможно, RTA пытается выполнить фактическую вредоносную активность, описанную. В других случаях RTA будут эмулировать всю активность или её части. Например, некоторое боковое перемещение по умолчанию будет нацелено на локальный хост (хотя параметры обычно позволяют тестировать несколько хостов). В других случаях исполняемые файлы, такие как cmd.exe или python.exe, будут переименованы, чтобы создать впечатление, что бинарный файл Windows выполняет нестандартные действия.
Некоторые RTA требуют сторонних инструментов для корректного выполнения. Вы можете запускать многие RTA без дополнительных инструментов, но для использования полного набора некоторые потребуют дополнительных загрузок.
В таблице ниже приведена информация о зависимостях:
| Зависимость | RTA | Источник |
|---|---|---|
| Sysinternals Suite | user_dir_escalation.py, sip_provider.py, system_restore_proc.py, trust_provider.py | Microsoft |
| MsXsl | msxsl_network.py | Microsoft |
Защитник Windows или другие антивирусные продукты могут блокировать или иным образом мешать работе RTA во время их выполнения. Подумайте, как вы настраиваете продукты безопасности на тестовом хосте перед запуском RTA, исходя из целей ваших тестов.
Изменяя common.py, вы можете настроить, как скрипты RTA будут работать в вашей среде. Вы даже можете написать совершенно новую функцию для использования в одном или нескольких новых RTA.
Чтобы запустить RTA powershell_args.py, просто выполните:
python powershell_args.py
Чтобы запустить целый каталог RTA, проще всего использовать скрипт-запускатор «run_rta.py». Этот скрипт-запускатор способен запустить каждый скрипт в подкаталоге «red_ttp» и сделает это по умолчанию:
Все операционные системы:
python run_rta.py
В качестве альтернативы можно использовать цикл:
Windows:
for %f in (*.py) do python %f
Linux/Mac:
for i in (*.py); do python $i; done
Ни одно из правил не требует аргументов, но некоторые могут опционально принимать аргументы для дальнейшей настройки техники.
Чтобы помочь с частыми проблемами, обратитесь к следующим часто задаваемым вопросам:
Это может произойти, если установлен Python 3.x вместо 2.7. Обратите внимание, что в предварительных требованиях указан 2.7, хотя мы рассматриваем долгосрочный подход с использованием 3.x.
Чтобы устранить ошибки, связанные с отсутствующей зависимостью, убедитесь, что вы следовали инструкциям по загрузке сторонних утилит, таких как Sysinternals Suite, и что вы распаковали эти исполняемые файлы в подкаталог «bin».
В вашей среде могут быть межсетевые экраны на хостах, которые препятствуют боковому перемещению. Это отлично, и не стоит отключать это в производственной среде! Вместо этого отметьте, можете ли вы обнаружить неудачную попытку.
Когда Защитник Windows или другие антивирусные продукты обнаруживают вредоносную активность, они иногда блокируют файлы, что приводит к этой ошибке. Обратитесь к журналам вашего антивируса, чтобы узнать, является ли это причиной ошибки.
Endgame продолжит выпускать скрипты в ближайшие недели и месяцы, соответствующие различным техникам MITRE ATT&CK. Если вы уже написали скрипт, мы принимаем pull request'ы и с радостью рассмотрим и объединим дополнения! Вклад в этот репозиторий — отличный способ расширить RTA для всего сообщества.