
Ferramenta de segurança para detectar ataques de envenenamento ARP
Ferramenta de segurança para detectar ataques de envenenamento ARP
+-------------+ +---------------+ +------------+
| ARP packet | ARP Reply | Mac-ARP Header| Consistent | Spoof |
| Sniffer | ------------> | consistency | --------------> | Detector |
| | Packets | Checker | ARP Packets | |
+-------------+ +---------------+ +------------+
| /
Inconsistent /
ARP Packets Spoofed
| ARP Packets
V /
+--------------+ /
| | /
| Notifier | <----------
| |
+--------------+
Sniffer de Pacotes ARP
Ele fareja todos os pacotes ARP e descarta
Verificador de Consistência do Cabeçalho MAC-ARP
Ele compara
Se algum dos acima não corresponder, será notificado.
Detector de Spoofing
Ele funciona com base na propriedade básica da pilha TCP/IP.
A placa de interface de rede de um host aceitará pacotes enviados para seu endereço MAC, endereço de broadcast e endereços multicast inscritos. Esses pacotes serão passados para a camada IP. A camada IP aceitará apenas pacotes IP endereçados ao(s) seu(s) endereço(s) IP e descartará silenciosamente o restante dos pacotes. Se o pacote aceito for um pacote TCP, ele é passado para a camada TCP. Se um pacote TCP SYN for recebido, o host responderá com um pacote TCP SYN/ACK se a porta de destino estiver aberta, ou com um pacote TCP RST se a porta estiver fechada.
Portanto, pode haver dois tipos de pacotes:
Para cada pacote ARP consistente, construiremos um pacote TCP SYN com o MAC de destino e o IP de destino conforme anunciado pelo pacote ARP, com alguma porta de destino TCP aleatória, e o MAC de origem e IP de origem são os do host que executa a ferramenta.
Se um RST (porta fechada) ou ACK (porta ouvindo) for recebido dentro do LIMITE DE TEMPO para o SYN, então o host (que enviou o pacote ARP) é legítimo.
Caso contrário Nenhuma resposta é recebida dentro do LIMITE DE TEMPO, então o host não é legítimo e será notificado.
Notificador
Ele fornece notificações da área de trabalho em caso de detecção de spoofing ARP.

npm
[sudo] npm install arp-validator -g
source
git clone https://github.com/rnehra01/arp-validator.git
cd arp-validator
npm install
Use o binário em bin/ para executar
[sudo] arp-validator [action] [options]
ações:
start iniciar arp-validator como um daemon
opções:
--interface, -i
Interface de rede na qual a ferramenta funciona
arp-validator start -i eth0 ou --interface=eth0
--hostdb, -d
armazena hosts válidos em arquivo externo (caminho absoluto)
arp-validator start -d host_file ou --hostdb=host_file
--log, -l
gera logs em arquivos externos (caminho absoluto)
arp-validator start -l log_file ou --log=log_file
stop parar o daemon arp-validator
status obter status do daemon arp-validator
opções globais:
--help, -h
Exibe informações de ajuda sobre este script
'arp-validator -h' ou 'arp-validator --help'
--version
Exibe informações de versão
arp-validator --version
Vivek Ramachandran and Sukumar Nandi, “Detecting ARP Spoofing: An Active Technique”