Voltar às atualizações
New releaseSep 5, 2026

emp3r0r v4.15.0

Malha de Gossip C2 com Autocura e Descoberta Assistida de Pares, Execução BOF Multiplataforma e Agentes Programáveis.

Compartilhar
emp3r0r

emp3r0r

Um C2 auto-recuperável, somente em memória, para Linux e Windows — agentes que sobrevivem a links quebrados, nunca tocam o disco e fazem script através da API Win32.


Discord GitHub Sponsors

GitHub go.mod Go version Tests GitHub License GitHub release


emp3r0r-readme

O que é o emp3r0r?

emp3r0r é um framework de pós-exploração e C2 construído para ambientes Linux e Windows onde stealth e resiliência não são opcionais. Em vez de assumir uma conexão confiável de volta a um servidor, os agentes formam uma malha auto-recuperável que continua funcionando quando os links quebram. Em vez de pedir Python ou PowerShell ao alvo, eles executam tudo em memória. E em vez de limitar você aos truques de uma única plataforma, o emp3r0r executa BOFs do Windows, objetos Linux e scripts Starlark — tudo sem arquivos, tudo em processo.


Destaques Principais e Recursos Únicos

🐍 Agentes Programáveis (Motor Starlark Embutido e Proxy da API Win32)

Cada agente carrega seu próprio motor de scripting, então você pode adicionar nova lógica de pós-exploração sem compilar ou enviar binários.

  • Scripts rodam inteiramente em memória — sem necessidade de Python, Bash ou PowerShell no alvo, e sem interpretadores de comando sendo iniciados.
  • Um conjunto completo de APIs embutidas cobre I/O de arquivos, HTTP, execução de comandos e mais, diretamente do código do script.
  • No Windows, scripts podem chamar funções nativas do Win32 diretamente — o agente faz proxy direto para as DLLs do sistema.
  • Módulos são arquivos Starlark simples com um pequeno manifesto JSON, então adicionar os seus próprios é fácil e sem arquivos.

Por que isso importa: escrever e estender a funcionalidade do agente se torna tão simples quanto editar um script, sem nenhum dos vestígios de deixar um interpretador ou um novo binário no alvo.


🔐 Fixação de Identidade Criptográfica TOFU

Os agentes vinculam sua identidade a uma chave criptográfica na primeira vez que falam com você — e esse vínculo nunca muda.

  • Re-registro com credenciais diferentes é tratado como impostor e rejeitado.
  • Remover um agente é uma decisão explícita do operador, não algo que uma chave roubada possa fazer silenciosamente.

Por que isso importa: sequestro de sessão e clonagem de agente simplesmente não acontecem; cada agente com quem você fala é aquele que você registrou.


🔒 Sigilo Direto Perfeito (PFS)

Todo link C2 e de peer usa chaves ECDH efêmeras com chaves de criptografia derivadas da sessão.

Por que isso importa: mesmo que uma chave de longo prazo seja comprometida depois, ela não pode ser usada para descriptografar tráfego que já passou.


🕸️ Rede Mesh de Gossip P2P Autônoma

Os agentes se descobrem e retransmitem tráfego através de uma malha de gossip, então a operação não desmorona quando um link ou um servidor desaparece.

  • Peers se conectam via mTLS 1.3 camuflado ou UDP confiável (KCP), com cada salto criptografado.
  • O tráfego contorna relays mortos automaticamente — sem cirurgia manual de proxy no meio da operação.
  • Segmentos sem acesso direto ao C2 continuam alcançáveis através de seus vizinhos.

Por que isso importa: a rede faz o pivoting por você. Corte um link, perca uma máquina ou bloqueie o C2 — os agentes se redirecionam sozinhos.


📂 Sistema de Arquivos P2P

Arquivos se movem entre agentes diretamente, não apenas através do C2.

  • As transferências usam túneis peer-to-peer criptografados, então redes internas não viram gargalo no seu servidor.
  • Arquivos são armazenados em cache na memória do agente como blobs criptografados e servidos aos peers sob demanda.
  • Se nenhum peer tem um arquivo, o agente o busca do C2 automaticamente.

Por que isso importa: a entrega é rápida e majoritariamente invisível ao canal C2 — ideal para ambientes com restrição de egress.


📡 Listeners Multi-Protocolo e Stagers Plugáveis

Colocar um agente para dentro é tratado com a mesma seriedade que mantê-lo vivo.

  • Listeners HTTP, TCP e UDP com enquadramento confiável e perfis HTTP personalizáveis.
  • Um stager de aproximadamente 2KB construído sobre syscalls diretas do Linux — sem libc, sem toolchain no alvo.
  • Transportes de stager plugáveis e packers auto-descompactáveis permitem misturar o acesso inicial em qualquer canal que seu alvo permita, e derrotar a correspondência de assinaturas estáticas no processo.
  • O código do stage e do agente respeita a disciplina de leitura/escrita/execução — nunca RWX.

Por que isso importa: acesso inicial pequeno, adaptável e higiênico em memória significa que você pode pousar em hosts que de outra forma estariam fora de alcance.


🧩 Suporte Nativo Cross-Platform a BOF e PICO (COFF, ELF e PICO)

Execute módulos C compilados em processo em qualquer plataforma:

  • Binários COFF/BOF do Windows com empacotamento de argumentos tipados.
  • Objetos relocáveis ELF do Linux carregados diretamente na memória do agente.
  • Módulos PICO do Crystal-Kit com spoofing de callstack SilentMoonwalk.
  • Kerbeus-BOF, Remote-OPs e uma suíte de Consciência Situacional vêm prontos para uso.

Por que isso importa: BOFs são tão bons quanto seu loader — o emp3r0r os executa em processo sem novo processo e sem deixar rastro, tanto no Linux quanto no Windows.


🧬 Carregador de Biblioteca em Memória (memmod)

Bibliotecas nativas são mapeadas no próprio espaço de endereçamento do agente e chamadas ali — sem LoadLibrary, sem dlopen, sem arquivo jamais tocando o disco.

  • memmod carrega DLLs PE no Windows e .so ELF no Linux, tratando relocações, imports e chamadas de export em processo.
  • Ele se baseia em trabalho upstream comprovado: o loader PE memmod do WireGuard e o loader ELF e maquinário de chamadas do Sliver C2 / sliverarmory/reflektor.
  • memdeps fica acima dele: uma dependência declarada é resolvida do memfs criptografado/C2, mapeada apenas para a operação que precisa dela, e desmapeada no retorno.

Por que isso importa: estender o agente com código nativo não requer um novo binário, um serviço de loader ou um arquivo no disco.


🐧 Módulos Linux e eBPF

Módulos Linux são scripts Starlark que podem alcançar até o kernel. O agente mapeia libbpf sob demanda e expõe sua API a scripts como builtins apoiados em Go, então um módulo pode enumerar, anexar e destruir objetos eBPF sem compilador e sem processo filho.

Categorias