
Revenant - A 3rd party agent for Havoc that demonstrates evasion techniques in the context of a C2 framework
Revenant es un agente de terceros para Havoc escrito en C, y basado en Talon. Este implante está pensado para expandir el implante Talon mediante la implementación de métodos de ejecución encubiertos, capacidades robustas y más personalización.

Este proyecto pretende ser un implante C2 de Havoc autocontenido. La funcionalidad deseada para el usuario final es la siguiente:
- Descarga el repositorio
- Descomprime Revenant.zip
- pip install black
- inicia Havoc (./havoc server --profile ./profiles/havoc.yaotl -v --debug & ./havoc client )
- Ve a la carpeta raíz
- python Revenant.py
- ???
- BENEFICIO
Compatibilidad con x86 y Win 7:
- Deshabilitar NativeAPI
Nota: Revenant usa NtCreateUserProcess para proporcionar la funcionalidad de NativeAPI. NtCreateUserProcess no es compatible con x86 ni con Win 7
- pwsh - ejecuta comandos a través de powershell.exe -> pwsh ls
- shell - ejecuta comandos a través de cmd.exe -> shell dir
- download - descarga un archivo a la carpeta loot -> download C:\test.txt
- upload - sube un archivo a la carpeta deseada -> upload /home/test.txt C:\temp\test.txt
- exit - elimina el implante actual -> exit
- Sleep - Establece el sleep en segundos
- Polymorphic - Habilitar/Deshabilitar polimorfismo en tiempo de compilación y ejecución
- Obfuscation - Ofuscar cadenas con XOR
- Arch - x86/x64
- Native - Usar NativeAPI donde esté implementado
- AntiDbg - Aprovechar comprobaciones antidebug en la inicialización
- RandCmdIDs - Aleatorizar los IDs de comando
- Unhooking - Método GhostFart/Perun's Fart para desenganchar, ejecutar el comando y volver a enganchar
Nota: RandCmdIDs aleatoriza los CmdIDs en el ejecutable de salida. Revenant NO almacena estos CmdIDs aleatorios; solo funcionarán con la sesión activa. Si quieres un ejecutable reutilizable, NO habilites esta opción.
- Añadir exec-assembly
- Añadir comandos cd, ls, whoami
- Disminuir la entropía