Beaconing
Um programa malicioso que liga para o servidor do atacante em intervalos regulares, como um relógio. A regularidade é o que o denuncia.
Depois de infectar uma máquina, o programa malicioso precisa receber ordens. Em vez de esperar uma conexão de fora (que o firewall bloquearia), ele mesmo liga para fora, para o servidor de comando e controle (C2) do atacante, e pergunta "tem tarefa para mim?". Essa ligação periódica se chama beaconing (de beacon, farol): um sinal que pisca em ritmo fixo.
O ritmo é a pista. Gente navegando gera conexões irregulares: muitas num minuto, nenhuma por horas. Um beacon gera conexões espaçadas por intervalos quase iguais (a cada 60 segundos, a cada hora), sempre para o mesmo destino, na mesma porta, com tamanhos parecidos. Muitos programas maliciosos somam um pouco de variação aleatória (jitter) para disfarçar, mas o padrão continua visível.
Para caçar beacons em registros de fluxo:
- Agrupe os fluxos por par (origem interna, destino externo, porta).
- Em cada par, ordene pelo horário e calcule os intervalos entre um fluxo e o seguinte.
- Compare a média dos intervalos com a dispersão (desvio padrão). Desvio pequeno perto da média, com dezenas de repetições, é um beacon.
Nem todo tráfego regular é ataque: o relógio do sistema sincroniza por NTP (porta UDP 123) em ritmo fixo, e agentes de atualização e monitoramento também. Confirme olhando o destino: para quem a máquina liga, de que rede ele é (veja o conceito Mapeamento de IP para ASN) e se aquilo faz sentido para a função da máquina.
Ferramentas: nfdump lê arquivos de NetFlow (nfdump -R pasta -o "fmt:%ts %sa %da %dp"), e uma planilha ou um script pequeno calcula os intervalos.