
Предоставление Azure pipelines для создания инфраструктуры и запуска Atomic тестов.
С быстрорастущим разнообразием атак и одновременным увеличением количества правил обнаружения, предлагаемых EDR (Endpoint Detection and Response) и создаваемых вручную, стала очевидной необходимость постоянного функционального тестирования правил обнаружения. Однако повторный запуск этих атак вручную и их сопоставление с правилами обнаружения — трудоемкая задача, которую стоит автоматизировать.
Для решения этой проблемы я разработал «PurpleKeep», инициативу с открытым исходным кодом, предназначенную для автоматизации тестирования правил обнаружения. Используя возможности проекта Atomic Red Team, который позволяет моделировать атаки в соответствии с MITRE TTP (тактики, техники и процедуры), PurpleKeep расширяет симуляцию этих TTP, чтобы служить отправной точкой для оценки эффективности правил обнаружения.
Автоматизация процесса симуляции одного или нескольких TTP в тестовой среде сопряжена с определенными проблемами, одной из которых является загрязнение платформы после нескольких симуляций. Однако PurpleKeep стремится преодолеть это препятствие, оптимизируя процесс симуляции и упрощая создание и инструментирование целевой платформы.
Изначально разработанный как Proof of Concept, PurpleKeep служит платформой для сквозной валидации правил обнаружения, ориентированной на среду Azure. Он был протестирован в сочетании с автоматическим развертыванием Microsoft Defender for Endpoint в качестве предпочтительного решения EDR. PurpleKeep также поддерживает настройку политик безопасности и аудита, позволяя пользователям имитировать желаемую среду конечных точек.
Для упрощения анализа и мониторинга PurpleKeep интегрируется с Azure Monitor и Log Analytics для хранения журналов симуляции и обеспечения дальнейшей корреляции с любыми событиями и/или оповещениями, хранящимися на той же платформе.
TLDR: PurpleKeep предоставляет платформу для симуляции атак, которая служит отправной точкой для сквозной валидации правил обнаружения в среде на базе Azure.
Проект основан на Azure Pipelines и требует следующего для запуска:
Вы можете предоставить файл политики безопасности и/или аудита, который будет загружен для имитации конфигураций групповой политики. Используйте опцию Secure File в библиотеке Azure DevOps, чтобы сделать его доступным для ваших конвейеров.
Обратитесь к файлу variables для настраиваемых элементов.

Развертывание инфраструктуры использует Azure Pipeline для выполнения следующих шагов:
В настоящее время поддерживаются только Atomics из публичного репозитория. Конвейер принимает ID техники или список техник, разделенный запятыми, например:
Журналы симуляции поступают в таблицу AtomicLogs_CL рабочего пространства Log Analytics.
В настоящее время есть два способа запуска симуляции:
Этот конвейер будет развертывать новую платформу после симуляции каждого TTP. Рабочее пространство Log Analytics будет сохранять журналы каждого запуска.
Предупреждение: это приведет к подключению большого количества хостов к вашему EDR.
Новая инфраструктура будет развернута только в начале конвейера. Все TTP будут симулированы на этом экземпляре. Это самый быстрый способ симуляции, предотвращающий подключение большого количества устройств, однако запуск большого количества симуляций в одной среде несет риск загрязнения среды и снижения стабильности и предсказуемости симуляций.