Magic Quadrant™ für Privileged Access Management 2025: Netwrix zum vierten Jahr in Folge anerkannt. Laden Sie den Bericht herunter.

Plattform
Ressourcen­zentrumBlog
Covenant C2 füllt die Lücke, die von Empire PowerShell hinterlassen wurde

Covenant C2 füllt die Lücke, die von Empire PowerShell hinterlassen wurde

Jan 27, 2023

Post-Exploitation-Tools werden von Bedrohungsakteuren verwendet, um sich seitlich in einem Netzwerk zu bewegen und ihre Privilegien zu eskalieren, um Daten zu stehlen, Malware freizusetzen, Backdoors zu erstellen und mehr. Rote Teams und ethische Hacker nutzen diese Tools ebenfalls; tatsächlich spielt die Simulation der Bemühungen von Gegnern eine Schlüsselrolle bei der Implementierung effektiver Kontrollen zur Sicherung von Systemen, Anwendungen und Dateien.

Bis vor kurzem war eines der am weitesten verbreiteten Post-Exploitation-Frameworks PowerShell Empire (PSEmpire). Es ermöglichte Angreifern, PowerShell- und Python-Agenten zu verwenden, um schädliche Elemente von Keyloggern bis hin zu mimikatz in Windows-, Linux- und macOS-Umgebungen einzusetzen, während sie der Erkennung entgingen. Jedoch wurde 2019 auf der Empire GitHub Projektseite veröffentlicht, dass PowerShell Empire nicht länger unterstützt wird. Dies war wahrscheinlich auf die Tatsache zurückzuführen, dass Endpoint Detection and Response (EDR)-Tools immer effektiver darin wurden, bösartige PowerShell-Nutzung zu erkennen.

Dementsprechend sind viele Angreifer und Cybersicherheitsprofis gleichermaßen zu Next-Generation Open-Source-C2-Frameworks übergegangen. Dieser Artikel untersucht eines dieser Post-Exploitation-Tools: Covenant C2.

Über Covenant C2

Covenant C2 ist ein Command-and-Control (C&C)-Framework, das das Ausnutzen von Webanwendungen und deren unterstützenden Netzwerkumgebungen erleichtert. Dieses hoch skalierbare, Open-Source-Framework ist auf GitHub verfügbar. Es lässt sich innerhalb von Minuten implementieren, auch für diejenigen mit minimaler C2-Framework-Erfahrung, und bietet eine intuitive webbasierte Schnittstelle (siehe Abbildung 1), die es einfach macht, neue Agenten, Datenquellen und Integrationen hinzuzufügen und Daten sowie Anmeldeinformationen zu extrahieren.

Image

Abbildung 1. Covenant-Dashboard (Quelle: GitHub)

Architektur

Covenant basiert auf einer hoch skalierbaren Architektur, die in C# geschrieben ist und es Entwicklern ermöglicht, problemlos Integrationen mit dem Framework zu erstellen. Es unterstützt Multi-User-Profile mit Authentifizierung und verwendet leichte, zuverlässige Datenbanken wie SQLLite und PostgreSQL. Die Multi-Plattform-Unterstützung umfasst Windows, macOS und Linux-Distributionen wie Kali.

Der Covenant Server führt Command-and-Control-Funktionalitäten aus, die es Benutzern ermöglichen, kollaborativ miteinander zu arbeiten. Er verwendet grunts — Agenten, die sich ähnlich wie die einfachen Soldaten im antiken Krieg verhalten, die als Kanonenfutter eingesetzt wurden. Diese grunts kommunizieren mit dem Covenant Server, während sie ihre zugewiesenen Aufgaben ausführen und Entdeckung vermeiden.

Implementierung von Covenant

Ein Covenant-Server kann innerhalb weniger Minuten einsatzbereit sein. Unter Windows ist die einzige Voraussetzung das .NET Core SDK. Um die Covenant ASP .NET Core-Anwendung zu erstellen und zu starten, führen Sie einfach die folgenden Befehle aus:

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

cd Covenant/Covenant

dotnet build

dotnet run
      

Alternativ können Sie einen Docker container verwenden.

Navigieren Sie dann zum Localhost-Computer über den Port 7443, und Sie können die Covenant UI mit Ihrem bevorzugten Browser verwenden.

Mit Covenant

Die erste Aufgabe besteht darin, einen Listener einzurichten, wie hier beschrieben. Anschließend erstellen Sie eine Nutzlast, um Ihre Grunts auf entfernten Maschinen zu verteilen, wo sie eine Kommunikation mit dem Covenant-Server herstellen werden.

Dann können Sie die folgenden Seiten in der Covenant UI verwenden, um Aufgaben zu erstellen, auszuführen und zu überprüfen.

Grunts Page

Verwenden Sie die Grunts page zur Überprüfung Ihrer Grunts und um ihnen Aufgaben zur Ausführung zu geben.

Image

Abbildung 2. Detailseite von Grunt (Quelle: GitHub)

Beispiel: Mimikatz implementieren

Zum Beispiel veranschaulicht das Video unten, wie man einen Grunt verwendet, um mimikatz zu deployen:

Image

Abbildung 3. Verwendung eines Grunt zur Bereitstellung von Mimikatz

Sie können das Ergebnis der ausgeführten Aufgabe über die Browser-Oberfläche überprüfen.

Image

Abbildung 4. Überprüfung des Ergebnisses einer von einem Grunt ausgeführten Aufgabe

Aufgabenseite

Die Tasks page bietet eine sortierbare und durchsuchbare Liste aller verfügbaren Aufgaben, die Sie Ihren Grunts zuweisen können.

Image

Abbildung 5. Aufgabenseite

Aufgabenseite

Die Taskings-Seite zeigt die Aufgaben, die Sie Grunts zugewiesen haben, und deren Status.

Image

Abbildung 6. Aufgabenseite

Datenseite

Der Zweck von Aufgaben besteht darin, Daten zu erfassen, die auf der Data Page zusammengefasst werden. Der Indikatoren-Tab bietet eine Nachverfolgung der Aktivitäten, die Sie an Ihr Blue Team weitergeben können, um deren Sicherheitsbemühungen zu verstärken.

Image

Abbildung 7. Daten-Seite

Conclusion

Covenant C2 ist ein hervorragendes Beispiel dafür, wie Open-Source-C2-Nach-Exploitation-Projekte den Staffelstab von PowerShell Empire übernommen haben, um Red Teams zu stärken. Es beinhaltet viele beeindruckende Funktionen, die es ideal für kollaborative ethische Hacking-Bemühungen machen. Es gibt viele großartige Ressourcen auf dem Covenant GitHub, um Ihnen den Einstieg zu erleichtern. Wenn das Covenant-Framework für Sie neu ist, ist es an der Zeit, es sich anzusehen.

Teilen auf

Erfahren Sie mehr

Über den Autor

Asset Not Found

Joe Dibley

Sicherheitsforscher

Security Researcher bei Netwrix und Mitglied des Netwrix Security Research Teams. Joe ist ein Experte für Active Directory, Windows und eine Vielzahl von Unternehmenssoftwareplattformen und -technologien. Joe erforscht neue Sicherheitsrisiken, komplexe Angriffstechniken sowie zugehörige Milderungs- und Erkennungsmaßnahmen.