Magic Quadrant™ pour la gestion des accès privilégiés 2025 : Netwrix reconnue pour la quatrième année consécutive. Téléchargez le rapport.

Plateforme
Centre de ressourcesBlog
Covenant C2 comble le vide laissé par Empire PowerShell

Covenant C2 comble le vide laissé par Empire PowerShell

Jan 27, 2023

Les outils de post-exploitation sont utilisés par les acteurs de la menace pour se déplacer latéralement à l'intérieur d'un réseau et élever leurs privilèges afin de voler des données, déclencher des malwares, créer des portes dérobées et plus encore. Les équipes rouges et les hackers éthiques utilisent également ces outils ; en effet, simuler les efforts des adversaires joue un rôle clé dans la mise en œuvre de contrôles efficaces pour sécuriser les systèmes, les applications et les fichiers.

Jusqu'à récemment, l'un des cadres de post-exploitation les plus largement utilisés était PowerShell Empire (PSEmpire). Il permettait aux adversaires d'utiliser des agents PowerShell et Python pour déployer des éléments malveillants, allant des enregistreurs de frappe à mimikatz, dans des environnements Windows, Linux et macOS tout en échappant à la détection. Cependant, en 2019, la page du projet Empire GitHub a annoncé que PowerShell Empire n'était plus pris en charge. Cela était probablement dû au fait que les outils de détection et de réponse aux points de terminaison (EDR) sont devenus plus efficaces pour détecter l'utilisation malveillante de PowerShell.

En conséquence, de nombreux attaquants et professionnels de la cybersécurité ont adopté des cadres de commande et de contrôle (C2) open source de nouvelle génération. Cet article explore l'un de ces outils de post-exploitation : Covenant C2.

À propos de Covenant C2

Covenant C2 est un cadre de commande et de contrôle (C&C) qui facilite l'exploitation des applications web et de leurs environnements réseau associés. Ce cadre open source hautement évolutif est disponible sur GitHub. Il se met en place en quelques minutes, même pour ceux ayant une expérience minimale des cadres C2, et offre une interface web intuitive (voir Figure 1) qui simplifie l'ajout de nouveaux agents, sources de données et intégrations, ainsi que l'extraction de données et de justificatifs d'identité.

Image

Figure 1. Tableau de bord Covenant (source : GitHub)

Architecture

Covenant est construit sur une architecture hautement évolutive écrite en C# qui permet aux développeurs de construire facilement des intégrations avec le cadre. Il prend en charge plusieurs profils d'utilisateurs avec authentification et utilise des bases de données légères et fiables telles que SQLLite et PostgreSQL. Son support multi-plateforme inclut Windows, macOS et des distributions Linux telles que Kali.

Le serveur Covenant exécute une fonctionnalité de commandement et de contrôle, permettant aux utilisateurs de travailler en collaboration les uns avec les autres. Il utilise des grunts — des agents qui se comportent beaucoup comme les soldats de base dans l'ancienne guerre qui étaient utilisés comme chair à canon. Ces grunts communiquent avec le serveur Covenant pendant qu'ils exécutent leurs tâches assignées et évitent d'être détectés.

Mise en œuvre de Covenant

Un serveur Covenant peut être opérationnel en quelques minutes. Sur Windows, la seule condition préalable est le .NET Core SDK. Pour construire et démarrer l'application Covenant ASP .NET Core, exécutez simplement les commandes suivantes :

      git clone --recurse-submodules https://github.com/cobbr/Covenant

cd Covenant/Covenant

dotnet build

dotnet run
      

Alternativement, vous pouvez utiliser un Docker container.

Ensuite, naviguez vers la machine localhost en utilisant le port 7443, et vous pouvez commencer à utiliser l'interface utilisateur Covenant avec votre navigateur préféré.

Utilisation de Covenant

La première tâche consiste à mettre en place un écouteur, comme détaillé ici. Ensuite, créez un payload pour déployer vos grunts sur des machines distantes où ils établiront des communications avec le serveur Covenant.

Ensuite, vous pouvez utiliser les pages suivantes dans l'interface utilisateur de Covenant pour créer, exécuter et examiner les tâches.

Page des Grunts

Utilisez la page Grunts pour examiner vos grunts et les faire exécuter des tâches.

Image

Figure 2. Page de détail de Grunt (source : GitHub)

Exemple : Déploiement de mimikatz

Par exemple, la vidéo ci-dessous illustre comment utiliser un Grunt pour déployer mimikatz :

Image

Figure 3. Utilisation d'un grunt pour déployer mimikatz

Vous pouvez examiner le résultat de la tâche exécutée en utilisant l'interface du navigateur.

Image

Figure 4. Examen du résultat d'une tâche effectuée par un subalterne

Page des tâches

La page Tasks page fournit une liste triable et recherchable de toutes les tâches disponibles que vous pouvez assigner à vos Grunts.

Image

Figure 5. Page des tâches

Page des tâches

La page des tâches affiche les tâches que vous avez assignées aux grunts et leur statut.

Image

Figure 6. Page des tâches

Page de données

Le but des tâches est de capturer des données, qui sont résumées sur la Data Page. L'onglet Indicateurs fournit une piste d'audit de l'activité, que vous pouvez transmettre à votre équipe bleue pour renforcer leurs efforts de sécurité.

Image

Figure 7. Page de données

Conclusion

Covenant C2 est un excellent exemple de la manière dont les projets open-source C2 de post-exploitation ont repris le flambeau de PowerShell Empire pour renforcer les équipes rouges. Il comprend de nombreuses fonctionnalités impressionnantes qui le rendent idéal pour les efforts de piratage éthique collaboratifs. Il existe de nombreuses ressources de qualité sur le Covenant GitHub pour vous aider à démarrer. Si le cadre Covenant vous est nouveau, il est temps de le découvrir.

Partager sur

En savoir plus

À propos de l'auteur

Asset Not Found

Joe Dibley

Chercheur en sécurité

Chercheur en sécurité chez Netwrix et membre de l'équipe de recherche en sécurité de Netwrix. Joe est un expert en Active Directory, Windows et une grande variété de plateformes logicielles d'entreprise et de technologies, Joe étudie les nouveaux risques de sécurité, les techniques d'attaque complexes, ainsi que les atténuations et détections associées.