
Framework scripté pour simuler plus de 50 techniques MITRE ATT&CK afin de tester les capacités de détection de l'équipe bleue. Inclut des scripts Python et un binaire compilé pour l'injection de processus, la simulation de beacon et l'émulation de mouvement latéral.
RTA fournit un cadre de scripts conçus pour permettre aux équipes bleues de tester leurs capacités de détection face aux techniques malveillantes, modelé d'après MITRE ATT&CK.
RTA est composé de scripts Python qui génèrent des preuves de plus de 50 tactiques ATT&CK différentes, ainsi qu'une application binaire compilée qui effectue des activités telles que le timestopping de fichiers, les injections de processus et la simulation de beaconing selon les besoins.
Là où c'est possible, RTA tente d'effectuer l'activité malveillante réelle décrite. Dans d'autres cas, les RTA émulent tout ou partie de l'activité. Par exemple, certains mouvements latéraux ciblent par défaut l'hôte local (bien que les paramètres permettent généralement des tests multi-hôtes). Dans d'autres cas, des exécutables tels que cmd.exe ou python.exe sont renommés pour donner l'impression qu'un binaire Windows effectue des activités non standard.
Certains RTA nécessitent des outils tiers pour s'exécuter correctement. Vous pouvez exécuter de nombreux RTA sans outils supplémentaires, mais pour utiliser la suite complète, certains nécessiteront des téléchargements supplémentaires.
Le tableau suivant fournit des informations sur les dépendances :
Windows Defender ou d'autres produits antivirus peuvent bloquer ou interférer avec les RTA pendant leur exécution. Réfléchissez à la configuration des produits de sécurité sur l'hôte de test avant d'exécuter les RTA en fonction des objectifs de vos tests.
En modifiant common.py, vous pouvez personnaliser le fonctionnement des scripts RTA dans votre environnement. Vous pouvez même écrire une toute nouvelle fonction à utiliser dans un ou plusieurs nouveaux RTA.
Pour exécuter le RTA powershell_args.py, exécutez simplement :
python powershell_args.py
Pour exécuter un répertoire entier de RTA, la manière la plus simple est d'utiliser l'exécuteur de scripts fourni, « run_rta.py ». Cet exécuteur peut exécuter tous les scripts du sous-répertoire « red_ttp » et le fait par défaut :
Tous les systèmes d'exploitation :
python run_rta.py
Alternativement, vous pouvez utiliser une boucle :
Windows :
for %f in (*.py) do python %f
Linux/Mac :
for i in (*.py); do python $i; done
Aucune des règles ne nécessite d'arguments, mais certaines peuvent éventuellement prendre des arguments pour une personnalisation supplémentaire de la technique.
Pour vous aider avec les problèmes courants, veuillez consulter les questions fréquemment posées suivantes :
Cela peut se produire si Python 3.x est installé au lieu de 2.7. Notez que les prérequis spécifient 2.7, bien que nous envisagions une approche à long terme utilisant 3.x.
Pour résoudre les erreurs concernant une dépendance manquante, assurez-vous d'avoir suivi les instructions pour télécharger des utilitaires tiers tels que la suite Sysinternals et d'avoir extrait ces exécutables dans le sous-répertoire « bin ».
Votre environnement peut avoir des pare-feu basés sur l'hôte qui vous empêchent de vous déplacer latéralement. C'est une bonne chose que vous ne devriez pas désactiver en production ! Au lieu de cela, notez si vous pouvez ou non détecter la tentative échouée.
Lorsque Windows Defender ou d'autres produits antivirus détectent une activité malveillante, ils verrouillent parfois les fichiers, ce qui entraîne cette erreur. Consultez vos journaux antivirus pour voir si c'est la raison de l'erreur.
Endgame continuera de publier des scripts dans les semaines et mois à venir correspondant à diverses techniques MITRE ATT&CK. Si vous avez déjà écrit un script, nous acceptons les pull requests et examinerons et fusionnerons volontiers les ajouts ! Contribuer à ce dépôt est un excellent moyen d'étendre RTA pour toute la communauté.