Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
antnium — Um framework C2 para acesso inicial em Go | Kitploit
Ferramentas/GitHubGitHub/dobin/antnium
Exfiltração de DadosPós-ExploraçãoComando e ControleRed TeamingDesenvolvimento de PayloadsCavalo de Troia de Acesso RemotoArchived
GitHubdobin/antnium

antnium

Um framework C2 para acesso inicial em Go

Ver Repositório
2003721há 4 anosRevisado pelo Kitploit

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

Antnium

Anti Tanium

Um framework de C2 e RAT escrito em Go.

Este código-fonte é publicado publicamente como referência para minha apresentação Develop your own RAT - AV & EDR Defense. O Antnium pretendia atender aos meus próprios requisitos, e não aos de outras pessoas. Funciona para as campanhas que realizei, mas não é necessariamente destinado a ser um framework de C2 genérico.

Há dois componentes:

  • client.exe: O RAT / beacon / agente / implante real
  • server.exe: Servidor C2

Funcionalidades

  • Canal de comunicação HTTP/S e Websocket
  • Suporte a proxy (manual, windows, autenticado e kerberos)
  • Execução de comandos
    • LOLbins diretos
      • Copiar arquivo primeiro
      • Process hollowing
    • Shell interativo cmd.exe/Powershell
    • Código remoto gerenciado e não gerenciado
      • Usando donut
      • PE para shellcode
      • Criptografado
      • Bypass de AMSI
  • Bypass de EDR com Reflexxion (restauração de ntdll.dll)
  • Comunicação criptografada
  • C2 maleável
  • Upload / download de arquivos
  • Navegador de arquivos

Como usar rapidamente

Baixe e instale o Go (e o git).

Usamos 127.0.0.1:8080 como domínio de C2 aqui (localhost, pois iniciamos tanto o client.exe quanto o server.exe no mesmo host). Este também é o padrão, não é necessário alterar nada.

Verifique a campanha em campaign/campaign.go:

  • serverUrl = "http://127.0.0.1:8080"

Compile no Windows:

> .\makewin.bat deploy

Compile no Linux:

$ make deploy

Inicie o servidor e o cliente:

cd build\
.\server.exe
.\static\client.exe

Acesse a WebUI abrindo a seguinte URL no navegador após iniciar o server.exe:

http://localhost:8080/webui/

Diretórios

static/: Diretório público para ferramentas

Coloque lá os arquivos que você deseja baixar em outras máquinas, como client.exe, wingman.exe. E suas ferramentas, como mimikatz.exe ou seatbelt.exe. Mas use nomes de arquivo menos chamativos.

Os arquivos também estão disponíveis via API /secure, solicitada com nomes de arquivo criptografados, e recebendo como resposta o arquivo criptografado e codificado em base64.

Arquivos dotNet podem ser executados usando a opção de execução remote (acessada via /secure).

upload/: Diretório privado para exfiltração de dados

Os uploads de arquivos do cliente serão armazenados aqui.

Instruções detalhadas de compilação

Instalação do Go:

  • Windows: https://golang.org/doc/install
  • Linux: apt install golang gcc-mingw-w64

Compile client.exe e server.exe:

> .\makewin.bat deploy

Isso criará:

  • /build/server.exe
  • /build/server.elf
  • /build/static/client.exe
  • /build/static/client.elf
  • /build/static/wingman.exe
  • /build/upload/
  • /build/webui/

Inicie o server.exe:

> cd build
> .\server.exe

Antnium 0.1
Loaded 0 packets from db.packets.json
Loaded 0 clients from db.clients.json 
Periodic DB dump enabled
Starting webserver on 127.0.0.1:8080  

Inicie o client.exe:

> .\build\static\client.exe

Antnium 0.1
time="2021-09-02T21:48:16+02:00" level=info msg="UpstreamHttp: Use WS"
time="2021-09-02T21:48:16+02:00" level=info msg="Connecting to WS succeeded"
time="2021-09-02T21:48:16+02:00" level=info msg=Send 1_computerId=c4oil02sdke2sp3nfngg 2_packetId=0 3_downstreamId=client 4_packetType=ping 5_arguments="map[]" 6_response=...
time="2021-09-02T21:48:16+02:00" level=info msg=Send 1_computerId=c4oil02sdke2sp3nfngg 2_packetId=0 3_downstreamId=client 4_packetType=ping 5_arguments="map[]" 6_response=...

Notas sobre compilação cruzada

Compilar o cliente Windows a partir do Linux funciona, mas exige algum conhecimento manual de linha de comando do GO/gcc, por causa de algumas dependências do Windows. Se não funcionar de imediato, compile o cliente Windows no próprio Windows (makewin.bat client).

Notas sobre a configuração de campanha

pkg/campaign/campaign.go conecta um client.exe compilado a um server.exe específico, formando uma campanha. Uma campanha tem chaves de criptografia e autenticação individuais, compartilhadas entre servidor e cliente.

type Campaign struct {
	ApiKey      string  // Key used to access client facing REST
	EncKey      []byte  // Key used to encrypt packets between server/client

	ServerUrl   string  // URL of the server, as viewed from the clients
}

E a chave de administrador/operador da UI em pkt/server/config.go:

type Config struct {
	AdminApiKey string
}

Observe que ServerUrl é a URL usada pelo cliente para toda interação com o servidor. É a URL pública do servidor, por exemplo, http://totallynotmalware.ch. O próprio server.exe pode estar atrás de um proxy reverso e ser iniciado com server.exe --listenaddr 127.0.0.1:8080 (portanto, ServerUrl não é necessariamente igual a listenaddr).

Notas sobre acesso ao servidor

Ao conectar-se ao servidor pela primeira vez, você precisa acessar e configurar a UI primeiro.

Os arquivos da UI Angular são publicamente acessíveis. Suponha que ServerUrl="http://localhost:8080" e listenaddr=0.0.0.0:8080. Você pode:

  • usar a antniumui integrada, disponível em http://localhost:8080/webui no seu navegador
  • ou usar ng serve a partir do diretório antniumui e então abrir http://localhost:4200 no navegador

Ao conectar à UI no navegador, você precisa primeiro configurar o IP do servidor e sua senha:

  • AdminApiKey (padrão: "Secret-AdminApi-Key", como no padrão da configuração)
  • ServerIP (padrão: "http://localhost:8080")
  • User (opcional, pode ser escolhido aleatoriamente)

Cliente

Testado em:

  • Windows 10
  • Ubuntu 20.04 LTS

Compile no Windows:

> .\makewin.bat client

Implante-o no seu alvo.

Servidor

Testado em:

  • Funciona: Ubuntu 20.04 LTS, Go 1.13.8
  • Funciona: Windows 10, Go 1.16.6
  • Falha na compilação: Ubuntu 16.04 LTS, Go 1.6.2

No Linux:

$ make server
$ mkdir -p static upload
$ ./server --listenaddr 0.0.0.0:8080

O resultado é server.exe. Certifique-se de executá-lo no diretório onde você tem ou espera ter:

  • upload/
  • static/
  • db.*.json como diretório de trabalho.

Ele iniciará um servidor REST nessa porta, fornecendo:

  • /: REST para os clientes
  • /ws: Websocket para os clientes
  • /admin: REST para a interface de administração (adicionar pacote, obter clientes)
  • /adminws: Websocket para a interface de administração (enviar pacotes)
  • /webui: Arquivos HTML para a interface de administração (código-fonte e html Angular, acessa REST e websocket)

Coloque um proxy reverso na frente dele (certifique-se de que ele suporte websockets!) ou faça o encaminhamento de portas.

Opções

Para proxy manual, use a URL HTTP completa:

client.exe -proxy http://proxy:8080

ou via variáveis de ambiente:

export PROXY http://localhost:8080
./client

Wingman

Wingman é basicamente o Cliente, mas sem conexão direta com o C2. Ele pode se conectar a um cliente existente em localhost:50000 (certifique-se de que ele esteja iniciado, se Campaign.AutoStartDownstreams for false).

Conecta-se à porta 50000 do localhost:

wingman.exe

Ou use rundll32.exe para carregar a dll (a versão de 64 bits do rundll32 em system32, não a versão de 32 bits em C:\Windows\SysWOW64\rundll32.exe):

C:\Windows\System32\rundll32.exe .\wingman.dll,Start

Ele aparecerá como downstream net#0.

Testes

go test ./...

Ainda pode haver condições de corrida. Se falhar uma vez, basta executá-lo novamente.

Baixar ferramenta