Falsificação de ARP
O ARP liga um IP a um endereço MAC sem conferir nada, e um atacante pode se passar pelo roteador.
Dentro de uma rede local, as máquinas não se acham pelo endereço IP, e sim pelo endereço MAC, o número de fábrica da placa de rede. Para descobrir qual MAC tem um IP, a máquina usa o ARP: solta uma pergunta para todo mundo ("who-has 10.0.0.1?") e espera a resposta ("10.0.0.1 is-at aa:bb:cc:..."). Cada uma guarda numa tabela o par IP para MAC.
O problema: o ARP não confere nada. Qualquer máquina pode responder, mesmo sem ninguém ter perguntado, e dizer "o 10.0.0.1 sou eu". É a falsificação de ARP (ARP spoofing, ou envenenamento de ARP). O atacante repete essa resposta falsa para a vítima. A vítima atualiza a tabela dela e passa a mandar para o atacante tudo que acha que está mandando para o roteador. O atacante fica no meio e lê (ou altera) o que não estiver cifrado.
Como achar numa captura:
- Filtre
arpe olhe as respostasis-at. Um IP deveria ter um só MAC. Se o mesmo IP (em geral o do roteador) aparece com dois MACs, há falsificação. O Wireshark avisa: "duplicate use of ... detected". - Para saber de quem é o MAC falso, procure outro pacote desse mesmo MAC que revele o IP de verdade dele, por exemplo um pedido ARP "who-has ... tell <IP do atacante>".
No terminal, tcpdump -nn -e -r arquivo.pcap arp mostra o MAC de quem enviou cada quadro.
Isso importa porque é um dos ataques mais antigos de rede local e ainda funciona em redes abertas (laboratórios, cafés, eventos). A defesa é no equipamento: switches com inspeção de ARP e, acima, usar sempre cifra (HTTPS, SSH) para que estar no meio não baste para ler nada.