Aller au contenu principal
Expert Cybersécurité & IAv9.0
Centres de ressources conformité
Besoin d'un accompagnement expert ?
Devis personnalisé sous 24h — audit, conformité, incident
Checklists Sécurité — Audit & Durcissement
Formats disponibles
📄 PDF 📊 Excel 🌐 Web

11 checklists professionnelles couvrant 2 200+ points de contrôle. Téléchargement gratuit, aucune inscription.

Covenant C2

hacking

Définition

Covenant est un framework de Command and Control (C2) .NET open source développé par Ryan Cobb, conçu pour les opérations Red Team avec un accent sur .NET et les agents 'Grunt'. Sa philosophie est d'être collaboratif (interface web multi-opérateurs), extensible (via des modules .NET custom), et de minimiser les artefacts sur les systèmes compromis. L'agent principal de Covenant est appelé 'Grunt', un implant .NET qui s'exécute entièrement en mémoire via des techniques de reflective loading. Les communications avec le serveur C2 passent par des 'Listeners' configurables (HTTP, HTTPS) et des 'Profiles' définissant les en-têtes et URLs utilisés (similaires aux Malleable C2 Profiles de Cobalt Strike). Les fonctionnalités de Covenant couvrent les besoins standards de post-exploitation : exécution de commandes shell et PowerShell, upload/download de fichiers, reconnaissance système (GetDomainInfo, GetDomainComputers), credential access (GetLogonPasswords via Mimikatz inline), mouvement latéral (PowerShellRemoting, WMI, PsExec), pivoting réseau (PortForward, Socks), et persistance (ScheduledTask, Registry). La fonctionnalité 'Task' d'Empire/Covenant est l'exécution en inline d'assemblies .NET (Execute-Assembly) sans toucher le disque : les assemblies .NET (SharpHound, Rubeus, SharpKatz) sont chargées directement en mémoire du Grunt et exécutées. Cela évite d'écrire des fichiers sur le disque qui seraient détectés par les AV. CovenantDNS, une extension community, ajoute le support des communications C2 via DNS, pour les environnements avec des restrictions réseau strictes autorisant uniquement DNS.

Fonctionnement

Installation via Docker : docker-compose up -d. Interface web sur https://localhost:7443. Créer un Listener HTTPS, générer un Launcher (PowerShell, Binary, MSIL), déployer sur la cible. Le Grunt s'enregistre sur le serveur. Depuis l'interface : GetLogonPasswords pour Mimikatz inline, Execute-Assembly SharpHound.exe -c All pour la collecte BloodHound, PortForward 8080 192.168.1.2 80 pour le port forwarding. Interactions en temps réel via l'interface web collaborative.

Exploitation offensive

L'Execute-Assembly de Covenant permet d'utiliser l'écosystème .NET offensif (SharpHound, Rubeus, Seatbelt, SharpUp, SharpCMD) sans binaires sur disque. Les assemblies sont chiffrées en transit et déchiffrées en mémoire, contournant les signatures AV fichier. L'interface collaborative est utile pour les engagements Red Team en équipe avec des rôles distincts (opérateur C2, analyste réseau, rédacteur rapport).

Détection et mitigation

L'exécution d'assemblies .NET en mémoire (Execute-Assembly) est détectée par ETW .NET Threat Intelligence et les EDR avec surveillance des chargements d'assemblies non signées. Les patterns de communication HTTP des Grunts (profil par défaut) sont reconnus par les solutions de détection réseau. Les EDR comportementaux détectent les actions Grunt (accès LSASS, requêtes LDAP) indépendamment du mécanisme de livraison.

Articles liés

Un projet cybersécurité ?

Expert dispo · Réponse 24h

Devis