tcpdump filter avanzado
sudo tcpdump -i <if> 'tcp[13] & 4!=0' -w rst.pcap
Capture apenas pacotes TCP com o flag RST usando filtros BPF sobre bytes do header, para medir varreduras e conexões rejeitadas.
Execute quando quiser ver os RSTs (conexões rejeitadas) sem o ruído do tráfego normal: o filtro BPF tcp[13] & 4 != 0 examina o byte 13 do header TCP (o byte dos flags) e captura apenas pacotes com RST ativo. Os RSTs são a assinatura de varreduras (o host que rejeita portas fechadas), conexões bloqueadas pelo firewall e serviços que morrem. No hunting, um pico de RSTs para um host vindo de muitos IPs é uma varredura em andamento; RSTs de um serviço específico denunciam problemas. É o exemplo de filtros BPF avançados: manipulação direta do header para expressar o que filtros de porta não conseguem.
Não use sem entender os flags TCP: o filtro captura RSTs, mas RSTs também fazem parte do comportamento normal (conexões a portas fechadas, reinícios de sessão) — o volume e o contexto decidem se é varredura ou ruído. Em interfaces movimentadas, capturar apenas RSTs é barato, mas a análise posterior de quem os origina requer correlação com logs do firewall ou do serviço. E atenção: tcp[13] & 4 != 0 captura RSTs em ambos os sentidos; se só te interessam os que seu host recebe, adicione o endereço. Para o panorama completo da varredura, combine com SYNs (tcp[13] & 2 != 0) e com o log do firewall.