APATE: a deusa grega da enganação agora caça hackers em Python
APATE, na mitologia grega, era a deusa da enganação e do engodo filha de Nyx, a noite. Ela se escondia por trás de aparências, fazendo as coisas parecerem o que não eram.
É exatamente o que um honeypot faz.
Importante: Caso queira ver o vídeo do funcionamento do honeypot, basta acessar o link do meu linkedin:
https://www.linkedin.com/in/mateusdiascs
O que é o APATE?
Um servidor SSH falso que parece completamente real. Quando um atacante conecta na porta 2222, ele vê:
- Banner legítimo do OpenSSH 8.9p1
- Shell interativo com 20+ comandos funcionais
- Filesystem Linux completo com arquivos convincentes
- Credenciais de banco de dados, chaves de API, histórico de comandos
Tudo falso. Tudo documentado.
O que ele detecta?
Enquanto o atacante acredita estar dentro de um servidor real, o APATE registra silenciosamente cada ação e aplica 6 regras de detecção:
| Regra | Gatilho |
|-------|---------|
| 🔴 Brute Force | Tentativas de login falhas |
| 🔴 Privilege Escalation | Uso do comando `sudo` |
| 🟡 Reconnaissance | Comandos de enumeração do sistema |
| 🟠 Lateral Movement | Tentativas de SSH para outros hosts |
| 🔴 Data Exfiltration | Acesso a arquivos sensíveis |
| 🔴 Honeytoken Triggered | Acesso ao diretório `secret_vault` |
Ao encerrar, gera um relatório completo com o IP do atacante e todos os alertas disparados.
Stack utilizada
- Python 3.10+
- Paramiko -> protocolo SSH completo
- bcrypt -> hash de senhas com rounds=14
- Threading -> múltiplas conexões simultâneas
- Rate Limiter -> bloqueio por IP
- Threat Intelligence -> base local de IPs maliciosos
O que aprendi construindo isso?
- Protocolo SSH e handshake na prática
- Criptografia aplicada com bcrypt e Diffie-Hellman
- Threading e concorrência em Python
- Deception Technology e psicologia do atacante
- Behavioral analysis e regras de detecção (MITRE ATT&CK)
Honeytoken: A armadilha dentro da armadilha
Um dos recursos mais interessantes é o `secret_vault`, um diretório que parece conter dados críticos mas apresenta um hash bcrypt falso com `rounds=14` quando o atacante tenta acessar.
Permission denied: secret_vault is encrypted.
Access requires decryption key.
Hash: $2b$14$XkJ9mNpQvRsWtYuZaAbBcDeFgHiJkLmNoPqRsTuVwXyZaAbBcDeFgH
O atacante perde tempo tentando quebrar um hash que não tem solução. Enquanto isso, cada tentativa é registrada.
Se você está estudando Blue Team, SOC ou segurança defensiva, honeypots são uma das formas mais práticas de entender como atacantes pensam e agem.
🔗 GitHub: github.com/mateusdias96cs/honeypot-ssh
#Python #CyberSecurity #BlueTeam #Honeypot #SOC #OpenSource #DeceptionTechnology



