
Fournissant des pipelines Azure pour créer une infrastructure et exécuter des tests Atomic.
Avec la variété croissante des techniques d'attaque et l'augmentation simultanée du nombre de règles de détection proposées par les EDR (Endpoint Detection and Response) et celles créées sur mesure, la nécessité de tests fonctionnels constants des règles de détection est devenue évidente. Cependant, relancer manuellement ces attaques et les recouper avec les règles de détection est une tâche laborieuse qui mérite d'être automatisée.
Pour relever ce défi, j'ai développé "PurpleKeep", une initiative open-source conçue pour faciliter les tests automatisés des règles de détection. En exploitant les capacités du projet Atomic Red Team qui permet de simuler des attaques suivant les TTPs du MITRE (Tactiques, Techniques et Procédures). PurpleKeep améliore la simulation de ces TTPs pour servir de point de départ à l'évaluation de l'efficacité des règles de détection.
Automatiser le processus de simulation d'un ou de plusieurs TTPs dans un environnement de test comporte certains défis, dont la contamination de la plateforme après plusieurs simulations. Cependant, PurpleKeep vise à surmonter cet obstacle en rationalisant le processus de simulation et en facilitant la création et l'instrumentation de la plateforme cible.
Développé principalement comme une preuve de concept, PurpleKeep sert de plateforme de validation de règles de détection de bout en bout, adaptée à un environnement basé sur Azure. Il a été testé en combinaison avec le déploiement automatique de Microsoft Defender for Endpoint comme solution EDR privilégiée. PurpleKeep offre également un support pour les configurations de politique de sécurité et d'audit, permettant aux utilisateurs de reproduire l'environnement de point de terminaison souhaité.
Pour faciliter l'analyse et la surveillance, PurpleKeep s'intègre aux services Azure Monitor et Log Analytics pour stocker les journaux de simulation et permettre une corrélation ultérieure avec les événements et/ou alertes stockés sur la même plateforme.
TLDR : PurpleKeep fournit une plateforme de simulation d'attaques pour servir de point de départ à votre validation de règles de détection de bout en bout dans un environnement basé sur Azure.
Le projet est basé sur Azure Pipelines et nécessite les éléments suivants pour pouvoir fonctionner :
Vous pouvez fournir un fichier de politique de sécurité et/ou d'audit qui sera chargé pour reproduire vos configurations de stratégie de groupe. Utilisez l'option de fichier sécurisé de la bibliothèque Azure DevOps pour le rendre accessible à vos pipelines.
Référez-vous au fichier variables pour vos éléments configurables.

Le déploiement de l'infrastructure utilise le pipeline Azure pour effectuer les étapes suivantes :
Actuellement, seuls les Atomics du dépôt public sont pris en charge. Les pipelines prennent en entrée un ID de technique ou une liste de techniques séparées par des virgules, par exemple :
Les journaux de la simulation sont ingérés dans la table AtomicLogs_CL de l'espace de travail Log Analytics.
Il existe actuellement deux façons d'exécuter la simulation :
Ce pipeline déploiera une nouvelle plateforme après la simulation de chaque TTP. L'espace de travail Log Analytics conservera les journaux de chaque exécution.
Avertissement : cela intégrera un grand nombre d'hôtes dans votre EDR
Une nouvelle infrastructure sera déployée uniquement au début du pipeline. Tous les TTPs seront simulés sur cette instance. C'est le moyen le plus rapide de simuler et évite d'intégrer un grand nombre d'appareils, mais exécuter de nombreuses simulations dans un même environnement comporte le risque de contaminer l'environnement et de rendre les simulations moins stables et prévisibles.