Loading...

Approfondimento Tech

ARP Address Resolution: guida completa

Scopri cos’è l’ARP Address Resolution, come funziona l’Address Resolution Protocol e perché è fondamentale nella comunicazione tra IP address e MAC address.

ARP Address Resolution Protocol.

Indice dei contenuti

  • Perché l’ARP è fondamentale
  • Cos’è l’ARP Address Resolution Protocol
  • Come funziona il processo di Address Resolution
  • ARP Table e ARP Cache
  • Gratuitous ARP
  • Struttura del Message Format ARP
  • ARP e la sicurezza: i rischi principali
  • ARP Spoofing e Man in the Middle
  • Denial of Service (DoS) basato su ARP
  • Tecniche di mitigazione degli attacchi ARP
  • Reverse Address Resolution Protocol (RARP)

Perché l’ARP è fondamentale

Ti sei mai chiesto come fa un computer a trasformare un IP address in un MAC address per inviare correttamente i dati all’interno di una rete?

La risposta è l’ARP Address Resolution Protocol. Senza di esso, le comunicazioni nella tua local area network (LAN) sarebbero impossibili: i pacchetti IP non avrebbero idea di quale hardware address usare per raggiungere la macchina destinataria.

L’address resolution è infatti il ponte che collega il mondo logico degli indirizzi IP al livello fisico della rete, rappresentato dagli indirizzi MAC. In questo articolo esploreremo in profondità il funzionamento del protocollo, la struttura dei message format, il ruolo della arp table e della arp cache, fino ad arrivare ai rischi di sicurezza come gli attacchi man in the middle (MITM) e il denial of service basati su ARP spoofing.

Cos’è l’ARP Address Resolution Protocol

Il termine ARP address resolution descrive il processo mediante il quale un host in una local area network mappa un IP address a un physical address o hardware address, ovvero il MAC address della scheda di rete.

L’Address Resolution Protocol (ARP) è un protocollo di livello link layer, fondamentale per il corretto funzionamento di reti Ethernet e Wi-Fi. Quando un dispositivo conosce l’IP address della macchina di destinazione ma non il suo indirizzo MAC, invia un ARP request message in broadcast. La macchina con quell’indirizzo IP risponde inviando un ARP response con il proprio indirizzo MAC, permettendo così la comunicazione.

Come funziona il processo di Address Resolution

Il flusso tipico dell’address resolution protocol arp avviene in più fasi:

  • Un host deve inviare un pacchetto IP a un altro dispositivo della stessa LAN.
  • Consulta la propria arp cache per verificare se esiste già la corrispondenza IP-MAC.
  • Se non trova la voce, genera un ARP request message, inviato a tutti i nodi della rete tramite broadcast.
  • L’host che possiede l’IP address corrispondente risponde con un ARP response, contenente il proprio hardware address.
  • Il mittente aggiorna la propria arp table con la nuova associazione e inoltra i pacchetti.

Questo meccanismo consente di evitare richieste ripetitive, grazie al caching delle risposte.

ARP Table e ARP Cache

Ogni dispositivo mantiene una arp table (o arp cache) che contiene le associazioni tra IP address e MAC address. Questa tabella è dinamica: si aggiorna automaticamente con le risposte ricevute e può contenere voci temporanee o permanenti.

  • ARP cache dinamica
    Le voci hanno un tempo di vita limitato e scadono se non vengono più utilizzate.
  • ARP cache statica
    Le associazioni vengono inserite manualmente dall’amministratore e restano fisse, riducendo il rischio di attacchi ma aumentando la complessità di gestione.

Gratuitous ARP

Un concetto particolare è il gratuitous ARP, ossia un pacchetto inviato da un host senza che vi sia stata una richiesta esplicita. Serve a scopi diversi:

  • Aggiornare le arp tables degli altri dispositivi in caso di cambiamento di IP o MAC.
  • Verificare che non ci siano conflitti di indirizzi IP in rete.
  • Annunciare la propria presenza nella local area network.

Questo tipo di messaggio è spesso sfruttato anche negli attacchi di tipo spoofing.

Struttura del Message Format ARP

Ogni pacchetto ARP ha un message format ben preciso, definito dallo standard. I campi principali sono:

  • Hardware type
    Definisce il tipo di rete (Ethernet è il valore più comune).
  • Protocol type
    Identifica il protocollo a livello superiore (IPv4 ad esempio).
  • Hardware address length
    Lunghezza del MAC address.
  • Protocol address length
    Lunghezza dell’IP address.
  • Operation
    Specifica se il messaggio è un ARP request message o un ARP response.
  • Sender hardware address
    Indirizzo MAC del mittente.
  • Sender protocol address
    Indirizzo IP del mittente.
  • Target hardware address
    MAC del destinatario (vuoto nelle richieste).
  • Target protocol address
    IP del destinatario.

Questo formato standardizzato consente a qualsiasi dispositivo di interpretare correttamente i arp packets.

ARP e la sicurezza: i rischi principali

Il protocollo ARP, pur essendo estremamente utile e semplice da implementare, presenta una debolezza intrinseca che lo rende un bersaglio ideale per i criminali informatici: non prevede alcun meccanismo di autenticazione o verifica dell’identità del mittente. In altre parole, ogni dispositivo collegato a una local area network può inviare ARP packets senza alcun controllo, dichiarando arbitrariamente che un certo IP address corrisponde al proprio MAC address.

Questa assenza di validazione apre la strada a numerose minacce, poiché la rete si basa esclusivamente sulla fiducia che i dispositivi abbiano tra loro. È sufficiente che un host malevolo invii arp response fraudolente affinché gli altri nodi aggiornino la loro arp cache con informazioni false. Da qui derivano due tipologie di attacco molto comuni e pericolose: l’ARP spoofing e il denial of service (DoS).

ARP Spoofing e Man in the Middle

L’attacco più diffuso legato all’address resolution protocol è l’ARP spoofing (o ARP poisoning). Con questa tecnica, l’attaccante invia in rete arp packets contraffatti con lo scopo di associare il proprio MAC address all’IP address di un altro dispositivo legittimo, spesso il gateway del router o un server critico.

Il risultato è devastante: il traffico che dovrebbe fluire verso la vittima viene invece dirottato verso la macchina dell’attaccante. Una volta posizionato “nel mezzo” della comunicazione, l’hacker realizza un classico man in the middle (MITM). Da qui può:

  • Intercettare pacchetti non cifrati e carpire credenziali, email, numeri di carte di credito.
  • Modificare i dati in transito, alterando file, iniettando malware o cambiando parametri di configurazione.
  • Bloccare selettivamente il traffico, impedendo la comunicazione tra due host o degradando le prestazioni della rete.

Esempio
Il furto di credenziali su reti Wi-Fi pubbliche non protette. Un utente malintenzionato può falsificare gli indirizzi ARP, intercettare le connessioni HTTP e registrare password o sessioni di accesso.

Denial of Service (DoS) basato su ARP

Oltre all’intercettazione, l’ARP può essere sfruttato per eseguire un denial of service (DoS). In questo caso l’attaccante non si limita a spiare i dati, ma li reindirizza verso un indirizzo IP o un physical address inesistente.

Il risultato è che i pacchetti vengono “persi” nella rete, impedendo alla vittima di comunicare con altri dispositivi o con il gateway. Se l’attacco è diretto verso il router o uno switch, l’intera local area network può subire un blackout delle comunicazioni, rendendo inaccessibili servizi fondamentali come email aziendali, VoIP o applicazioni cloud.

In scenari più gravi, un attacco DoS via ARP può essere usato come diversivo per nascondere azioni più invasive, come il furto di dati o l’installazione di backdoor nei sistemi compromessi.

Tecniche di mitigazione degli attacchi ARP

Proteggere una rete dagli abusi dell’address resolution protocol richiede un approccio multilivello. Tra le principali strategie adottate dagli amministratori di rete troviamo:

  • Static ARP entries
    Inserire manualmente nelle arp tables le associazioni IP-MAC dei dispositivi critici (server, router, stampanti di rete). Questo approccio elimina il rischio di spoofing per gli host selezionati, ma non è scalabile su reti di grandi dimensioni.
  • Dynamic ARP Inspection (DAI)
    Funzionalità disponibile negli switch di livello enterprise. Il dispositivo controlla ogni arp request message e arp response confrontandoli con un database di associazioni valide (spesso derivato dal DHCP snooping). Se un pacchetto non corrisponde, viene bloccato automaticamente.
  • Segmentazione della rete
    Dividere la rete in VLAN o sottoreti riduce la superficie d’attacco. In questo modo, anche se un attaccante riesce a compromettere una parte della rete, non può avvelenare l’intera LAN.
  • VPN e crittografia end-to-end
    Anche se un hacker riesce a posizionarsi in un man in the middle, l’uso di protocolli cifrati (HTTPS, TLS, IPSec) rende i dati intercettati incomprensibili.
  • Monitoraggio della ARP cache
    Strumenti di sicurezza possono rilevare variazioni sospette nelle arp tables, ad esempio quando un IP address cambia improvvisamente hardware address senza motivo. In questi casi il sistema genera un alert, permettendo una risposta rapida.
  • Strumenti di rilevamento ARP spoofing
    Software come Arpwatch, XArp o moduli IDS (Snort, Suricata) analizzano costantemente i pacchetti ARP e segnalano anomalie, come il ripetersi di gratuitous ARP o conflitti tra target protocol address e physical address.

Reverse Address Resolution Protocol (RARP)

Oltre al classico ARP address resolution, esiste anche il reverse address resolution protocol (RARP). Mentre ARP mappa IP → MAC, RARP svolge l’operazione inversa: associa un hardware address al relativo IP address.

Questo protocollo era utilizzato soprattutto nei dispositivi senza memoria permanente per conoscere il proprio indirizzo IP al momento dell’avvio. Oggi è stato in gran parte sostituito da protocolli più moderni come BOOTP e DHCP.

ARP nella pratica: esempio in Linux

Per comprendere meglio, vediamo un esempio pratico con i comandi disponibili in sistemi Linux:

# Show the ARP table

arp -n

# Manually add an IP–MAC association

sudo arp -s 192.168.1.10 00:1A:2B:3C:4D:5E

# Remove a record from the ARP cache

sudo arp -d 192.168.1.10

Questi comandi consentono di gestire direttamente la arp cache, aggiungendo voci statiche o rimuovendo quelle temporanee.

ARP e Virtualizzazione

Nelle reti virtualizzate, come quelle basate su hypervisor o container, l’ARP address resolution gioca un ruolo ancora più critico. Le arp requests devono essere gestite correttamente dal virtual switch per evitare conflitti e garantire che ogni IP address corrisponda al giusto physical address.

In ambienti complessi come i cloud, i provider implementano spesso tecniche avanzate di isolamento e filtraggio ARP per prevenire attacchi interni.

ARP nei moderni sistemi di sicurezza

Oggi, le soluzioni di sicurezza di rete includono controlli ARP integrati. Firewall avanzati e sistemi IDS/IPS monitorano i arp packets per rilevare anomalie come gratuitous arp sospetti o variazioni improvvise nei target protocol address.

Allo stesso tempo, protocolli di nuova generazione come IPv6 hanno introdotto meccanismi più sicuri, come il Neighbor Discovery Protocol, che sostituisce ARP con autenticazioni e protezioni aggiuntive.

To top