
Revenant - A 3rd party agent for Havoc that demonstrates evasion techniques in the context of a C2 framework
Revenant ist ein Drittanbieter-Agent für Havoc, geschrieben in C und basierend auf Talon. Dieses Implantat soll das Talon-Implantat erweitern, indem es verdeckte Ausführungsmethoden, robuste Fähigkeiten und mehr Anpassungsmöglichkeiten implementiert.

Dieses Projekt zielt darauf ab, ein eigenständiges Havoc-C2-Implantat zu sein. Die angestrebte Endbenutzer-Funktionalität ist wie folgt:
- Repository herunterladen
- Revenant.zip entpacken
- pip install black
- Havoc starten (./havoc server --profile ./profiles/havoc.yaotl -v --debug & ./havoc client )
- Zum Hauptordner wechseln
- python Revenant.py
- ???
- PROFIT
x86- und Win-7-Kompatibilität:
- NativeAPI deaktivieren
Hinweis: Revenant verwendet NtCreateUserProcess, um die NativeAPI-Funktionalität bereitzustellen. NtCreateUserProcess wird von x86 oder Win 7 nicht unterstützt.
- pwsh - führt Befehle über powershell.exe aus -> pwsh ls
- shell - führt Befehle über cmd.exe aus -> shell dir
- download - lädt Datei in den Loot-Ordner herunter -> download C:\test.txt
- upload - lädt Datei in den gewünschten Ordner hoch -> upload /home/test.txt C:\temp\test.txt
- exit - beendet das aktuelle Implantat -> exit
- Sleep - Schlafdauer in Sekunden festlegen
- Polymorphic - Polymorphismus zur Build- und Laufzeit aktivieren/deaktivieren
- Obfuscation - Zeichenketten mit XOR verschleiern
- Arch - x86/x64
- Native - NativeAPI verwenden, wo implementiert
- AntiDbg - Antidebug-Prüfungen bei der Initialisierung nutzen
- RandCmdIDs - Befehls-IDs randomisieren
- Unhooking - GhostFart/Perun's Fart-Methode zum Unhooking, zur Ausführung des Befehls und zum anschließenden erneuten Hooking
Hinweis: RandCmdIDs randomisiert die CmdIDs in der erzeugten ausführbaren Datei. Revenant speichert diese zufälligen CmdIDs NICHT; diese funktionieren nur mit der aktiven Sitzung. Wenn Sie eine wiederverwendbare ausführbare Datei möchten, aktivieren Sie diese Option NICHT.
- exec-assembly hinzufügen
- cd-, ls- und whoami-Befehle hinzufügen
- Entropie verringern