
Revenant - Um agente de terceiros para o Havoc que demonstra técnicas de evasão no contexto de um framework C2
Revenant é um agente de terceiros para o Havoc escrito em C e baseado no Talon. Este implante tem como objetivo expandir o implante Talon implementando métodos furtivos de execução, capacidades robustas e mais customização.

Este projeto tem como objetivo ser um implante Havoc C2 autossuficiente. A funcionalidade almejada para o usuário final é a seguinte:
- Baixe o repositório
- Descompacte o Revenant.zip
- pip install black
- inicie o Havoc (./havoc server --profile ./profiles/havoc.yaotl -v --debug & ./havoc client )
- Vá para a pasta raiz
- python Revenant.py
- ???
- LUCRO
Compatibilidade com x86 e Win 7:
- Desative a NativeAPI
Nota: o Revenant usa NtCreateUserProcess para fornecer a funcionalidade NativeAPI. NtCreateUserProcess não é suportado em x86 ou Win 7
- pwsh - executa comandos por meio do powershell.exe -> pwsh ls
- shell - executa comandos por meio do cmd.exe -> shell dir
- download - baixa o arquivo para a pasta de loot -> download C:\test.txt
- upload - envia o arquivo para a pasta desejada -> upload /home/test.txt C:\temp\test.txt
- exit - encerra o implante atual -> exit
- Sleep - Define o sleep em segundos
- Polymorphic - Ativa/Desativa o polimorfismo em tempo de compilação e execução
- Obfuscation - Ofusca strings com XOR
- Arch - x86/x64
- Native - Usar NativeAPI onde implementado
- AntiDbg - Utiliza verificações antidebug na inicialização
- RandCmdIDs - Randomiza os IDs de comando
- Unhooking - Método GhostFart/Perun's Fart para remover hook, executar comando e recolocar o hook
Nota: o RandCmdIDs randomiza os CmdIDs no executável de saída. O Revenant NÃO armazena esses CmdIDs aleatórios; eles funcionarão apenas com a sessão ativa. Se você quiser um executável reutilizável, NÃO habilite esta opção.
- Adicionar exec-assembly
- Adicionar comandos cd, ls, whoami
- Diminuir entropia