ARP Poisoning è un tipo di attacco informatico che abusa delle debolezze del protocollo di risoluzione degli indirizzi (ARP) ampiamente utilizzato per interrompere, reindirizzare o spiare il traffico di rete. In questo pezzo, daremo un rapido sguardo alla necessità di ARP, i punti deboli che consentono ARP avvelenamento, e che cosa si può fare per mantenere la vostra organizzazione al sicuro.
Che cos’è ARP?
L’ARP (Address Resolution Protocol) esiste per supportare l’approccio a livelli utilizzato fin dai primi giorni di rete dei computer. Le funzioni di ogni livello, dai segnali elettrici che viaggiano attraverso un cavo Ethernet al codice HTML utilizzato per il rendering di una pagina web, operano in gran parte indipendenti l’uno dall’altro. Questo è il modo in cui possiamo usare IPv4 – una tecnologia di livello di rete risalente ai primi anni 1980 – con tecnologie più recenti come Wi-Fi e Bluetooth: i livelli fisici e di collegamento dati inferiori gestiscono le specifiche del trasferimento dei dati su un mezzo specifico come le onde radio.
Lo scopo di ARP è quello di tradurre tra gli indirizzi a livello di collegamento dati – noti come indirizzi MAC – e gli indirizzi a livello di rete, che sono in genere indirizzi IP. Consente ai dispositivi in rete di” chiedere ” a quale dispositivo è attualmente assegnato un determinato indirizzo IP. I dispositivi possono anche annunciare questa mappatura al resto della rete senza essere richiesto. Per motivi di efficienza, i dispositivi in genere memorizzano nella cache queste risposte e creano un elenco di mappature MAC-to-IP correnti.
Che cos’è l’avvelenamento da ARP?
ARP Poisoning consiste nell’abusare delle debolezze di ARP per corrompere le mappature MAC-to-IP di altri dispositivi sulla rete. La sicurezza non era una preoccupazione fondamentale quando ARP fu introdotto nel 1982, quindi i progettisti del protocollo non includevano mai meccanismi di autenticazione per convalidare i messaggi ARP. Qualsiasi dispositivo sulla rete può rispondere a una richiesta ARP, indipendentemente dal fatto che il messaggio originale fosse destinato o meno. Ad esempio, se il computer A “chiede” l’indirizzo MAC del computer B, un utente malintenzionato sul computer C può rispondere e il computer A accetterà questa risposta come autentica. Questa svista ha reso possibile una serie di attacchi. Sfruttando strumenti facilmente disponibili, un attore di minacce può “avvelenare” la cache ARP di altri host su una rete locale, riempiendo la cache ARP con voci imprecise.
ARP Poisoning Attack Steps
I passi esatti di un attacco ARP Poisoning possono variare, ma generalmente consistono in almeno quanto segue:
L’attaccante Seleziona una Macchina vittima o Macchine
Il primo passo nella pianificazione e conduzione di un attacco ARP Poisoning è selezionare un Bersaglio. Questo può essere un endpoint specifico sulla rete, un gruppo di endpoint o un dispositivo di rete come un router. I router sono obiettivi interessanti perché un attacco di avvelenamento ARP riuscito contro un router può interrompere il traffico per un’intera sottorete.
Attaccante Lancia strumenti e inizia l’attacco
Una vasta gamma di strumenti sono facilmente disponibili per tutti coloro che cercano di effettuare un attacco di avvelenamento ARP. Dopo aver avviato lo strumento di sua scelta e aver configurato le impostazioni applicabili, l’attaccante inizierà l’attacco. Possono iniziare immediatamente a trasmettere messaggi ARP o attendere fino a quando non viene ricevuta una richiesta.
L’attaccante fa qualcosa con il traffico sterzato in modo errato
Una volta che la cache ARP su una macchina vittima o macchine è stato danneggiato, l’attaccante in genere eseguire un certo tipo di azione con il traffico sterzato in modo errato. Possono ispezionarlo, alterarlo o farlo “blackholed” e non raggiungere mai la destinazione prevista. L’azione esatta dipende dai motivi dell’attaccante.
Tipi di attacchi ARP Poisoning
Ci sono due modi generali in cui un attacco ARP Poisoning può verificarsi: L’utente malintenzionato può aspettare di vedere le richieste ARP per un particolare target ed emettere una risposta, o inviare un messaggio di trasmissione non richiesto noto come “ARP gratuito”. Il primo approccio è meno evidente sulla rete, ma potenzialmente meno di vasta portata nei suoi impatti. Un ARP gratuito può essere più immediato e avere un impatto maggiore numero di vittime, ma viene fornito con il rovescio della medaglia di generare un sacco di traffico di rete. In entrambi gli approcci, le cache ARP corrotte sulle macchine vittime possono essere sfruttate per ulteriori scopi:
Attacco Man-in-the-Middle (MiTM)
Gli attacchi MiTM sono probabilmente l’obiettivo più comune e potenzialmente più pericoloso dell’avvelenamento da ARP. L’attaccante invia risposte ARP falsificate per un determinato indirizzo IP, in genere il gateway predefinito per una particolare sottorete. Questo fa sì che le macchine vittima di popolare la loro cache ARP con l’indirizzo MAC della macchina dell’attaccante, invece di indirizzo MAC del router locale. Le macchine vittima inoltreranno quindi in modo errato il traffico di rete all’attaccante. Strumenti come Ettercap consentono all’utente malintenzionato di agire come proxy, visualizzare o modificare le informazioni prima di inviare il traffico alla destinazione prevista. Per la vittima, tutto può sembrare normale.
Sposare l’avvelenamento da ARP con l’avvelenamento da DNS può aumentare drasticamente l’efficacia di un attacco MiTM. In questo scenario, un utente vittima potrebbe digitare in un sito legittimo come google.com e ricevere l’indirizzo IP della macchina dell’attaccante, piuttosto che l’indirizzo legittimo.
Attacco DOS (Denial of Service)
Un attacco DoS ha lo scopo di negare a una o più vittime l’accesso alle risorse di rete. Nel caso di ARP, un utente malintenzionato potrebbe inviare messaggi di risposta ARP che mappano falsamente centinaia o addirittura migliaia di indirizzi IP a un singolo indirizzo MAC, potenzialmente travolgendo la macchina di destinazione. Questo tipo di attacco, a volte noto come ARP flooding, può anche essere utilizzato per indirizzare gli switch, potenzialmente influenzando le prestazioni dell’intera rete.
Dirottamento di sessione
Gli attacchi di dirottamento di sessione sono di natura simile a Man-in-the-Middle, tranne per il fatto che l’attaccante non inoltra direttamente il traffico dalla macchina vittima alla destinazione prevista. Invece, l’attaccante catturerà un vero e proprio numero di sequenza TCP o cookie web dalla vittima e lo utilizzerà per assumere l’identità della vittima. Questo potrebbe essere utilizzato, ad esempio, per accedere all’account di social media di un utente di destinazione se è stato effettuato l’accesso.
Qual è lo scopo di un attacco di avvelenamento da ARP?
Gli hacker hanno un’ampia varietà di motivi e l’avvelenamento da ARP non fa eccezione. Un utente malintenzionato potrebbe effettuare un attacco di avvelenamento ARP per qualsiasi numero di motivi, che vanno dallo spionaggio di alto livello al brivido di creare il caos sulla rete. In uno scenario potenziale, un utente malintenzionato utilizzerà messaggi ARP falsificati per assumere il ruolo di gateway predefinito per una determinata sottorete, indirizzando in modo efficace tutto il traffico verso la macchina dell’attaccante anziché il router locale. Possono quindi spiare, modificare o eliminare il traffico. Questi attacchi sono “rumorosi” nel senso che lasciano prove, ma non devono interferire con l’effettivo funzionamento della rete. Se lo spionaggio è l’obiettivo, la macchina attaccante semplicemente inoltrerà il traffico alla sua destinazione originale, dando all’utente finale alcuna indicazione che qualcosa è cambiato.
D’altra parte, il punto di un attacco DoS potrebbe essere quello di creare un’interruzione molto evidente nel funzionamento della rete. Mentre questo potrebbe essere mirato a privare un’azienda della sua capacità di operare, gli attacchi DoS sono spesso effettuati da aggressori meno esperti per il puro piacere di creare problemi.
Gli attacchi insider sono particolarmente preoccupanti quando si pensa all’avvelenamento da ARP. I messaggi ARP falsificati non andranno oltre i confini di una rete locale, quindi l’attacco deve provenire da un dispositivo connesso localmente. Non è impossibile per un estraneo di avviare un attacco ARP, ma avrebbero bisogno di compromettere in remoto un sistema locale attraverso altri mezzi prima. Un insider, nel frattempo, avrebbe solo bisogno di accesso alla rete e alcuni strumenti facilmente disponibili.
ARP Spoofing vs ARP Poisoning
I termini ARP Spoofing e ARP Poisoning sono generalmente usati in modo intercambiabile. Tecnicamente, lo spoofing si riferisce a un utente malintenzionato che impersona l’indirizzo MAC di un’altra macchina, mentre l’avvelenamento denota l’atto di corrompere le tabelle ARP su una o più macchine vittima. In pratica, tuttavia, questi sono entrambi sotto-elementi dello stesso attacco, e nel linguaggio generale, entrambi i termini sono usati per riferirsi all’attacco nel suo complesso. Altri termini simili potrebbero includere ARP cache poisoning o ARP table corruption.
Quali sono gli effetti di un attacco di avvelenamento da ARP?
L’impatto più diretto di un attacco ARP Poisoning è che il traffico destinato a uno o più host sulla rete locale sarà invece indirizzato verso una destinazione a scelta dell’attaccante. Esattamente quale effetto avrà dipende dalle specifiche dell’attacco. Il traffico potrebbe essere inviato alla macchina dell’attaccante o inviato a una posizione inesistente. Nel primo caso, potrebbe non esserci alcun effetto osservabile, mentre il secondo potrebbe inibire l’accesso alla rete.
L’avvelenamento della cache ARP non avrà un impatto duraturo. Le voci ARP vengono memorizzate nella cache da pochi minuti sui dispositivi finali a diverse ore per gli switch. Non appena un utente malintenzionato smette di avvelenare attivamente le tabelle, le voci danneggiate semplicemente invecchieranno e il corretto flusso di traffico riprenderà presto. L’avvelenamento da ARP da solo non lascerà un’infezione permanente o un punto d’appoggio sulle macchine della vittima. Tuttavia, gli hacker spesso concatenano molti tipi di attacchi insieme e l’avvelenamento da ARP può essere utilizzato in parte di una campagna più ampia.
Come rilevare un attacco di avvelenamento della cache ARP
Una varietà di software commerciale e open-source esiste per rilevare ARP cache poisoning, ma si può facilmente controllare le tabelle ARP sul proprio computer senza installare nulla. Sulla maggior parte dei sistemi Windows, Mac e Linux, l’emissione del comando” arp-a ” da un terminale o da una riga di comando visualizzerà le mappature correnti degli indirizzi IP-MAC della macchina.
Strumenti come arpwatch e X-ARP sono utili per il monitoraggio continuo della rete e possono avvisare un amministratore se si notano segni di un attacco di avvelenamento della cache ARP. Tuttavia, i falsi positivi sono una preoccupazione e possono creare un gran numero di avvisi indesiderati.
Come prevenire gli attacchi di avvelenamento da ARP
Esistono diversi approcci per prevenire gli attacchi di avvelenamento da ARP:
Tabelle ARP statiche
È possibile mappare staticamente tutti gli indirizzi MAC in una rete ai loro legittimi indirizzi IP. Ciò è altamente efficace nella prevenzione degli attacchi di avvelenamento da ARP, ma aggiunge un enorme onere amministrativo. Qualsiasi modifica alla rete richiederà aggiornamenti manuali delle tabelle ARP in tutti gli host, rendendo le tabelle ARP statiche irrealizzabili per la maggior parte delle organizzazioni più grandi. Tuttavia, in situazioni in cui la sicurezza è cruciale, ritagliare un segmento di rete separato in cui vengono utilizzate tabelle ARP statiche può aiutare a proteggere le informazioni critiche.
Switch Security
La maggior parte degli switch Ethernet gestiti offre funzionalità sportive progettate per mitigare gli attacchi di avvelenamento da ARP. Tipicamente note come Dynamic ARP Inspection (DAI), queste funzionalità valutano la validità di ogni messaggio ARP e rilasciano pacchetti che appaiono sospetti o dannosi. DAI può anche essere configurato in genere per limitare la velocità con cui i messaggi ARP possono passare attraverso lo switch, prevenendo efficacemente gli attacchi DoS.
DAI e funzionalità simili erano una volta esclusive di dispositivi di rete di fascia alta, ma ora sono comuni su quasi tutti gli switch di livello aziendale, compresi quelli che si trovano nelle aziende più piccole. È generalmente considerata una best practice abilitare DAI su tutte le porte tranne quelle collegate ad altri switch. La funzione non introduce un impatto significativo sulle prestazioni, ma potrebbe essere necessario abilitarla in combinazione con altre funzionalità come lo Snooping DHCP.
Abilitare la sicurezza delle porte su uno switch può anche aiutare a mitigare gli attacchi di avvelenamento della cache ARP. La sicurezza delle porte può essere configurata per consentire solo un singolo indirizzo MAC su una porta switch, privando un utente malintenzionato della possibilità di assumere maliziosamente più identità di rete.
Sicurezza fisica
Controllare correttamente l’accesso fisico al proprio luogo di lavoro può aiutare a mitigare gli attacchi di avvelenamento da ARP. I messaggi ARP non vengono instradati oltre i confini della rete locale, quindi gli aspiranti aggressori devono trovarsi in prossimità fisica della rete vittima o avere già il controllo di una macchina sulla rete. Si noti che nel caso di reti wireless, la vicinanza non significa necessariamente che l’attaccante ha bisogno di accesso fisico diretto; un segnale si estende a una strada o un parcheggio può essere sufficiente. Sia cablato o wireless, l’uso della tecnologia come 802.1x può garantire che solo i dispositivi affidabili e/o gestiti possano connettersi alla rete.
Isolamento di rete
Come affermato in precedenza, i messaggi ARP non vanno oltre la sottorete locale. Ciò significa che una rete ben segmentata potrebbe essere meno suscettibile all’avvelenamento della cache ARP nel complesso, poiché un attacco in una sottorete non può influire sui dispositivi in un’altra. Concentrare risorse importanti in un segmento di rete dedicato in cui è presente una maggiore sicurezza può ridurre notevolmente il potenziale impatto di un attacco di avvelenamento da ARP.
Crittografia
Mentre la crittografia non impedirà effettivamente un attacco ARP, può mitigare il danno potenziale. Un uso popolare degli attacchi MiTM era quello di catturare le credenziali di accesso che una volta venivano comunemente trasmesse in testo normale. Con l’uso diffuso della crittografia SSL/TLS sul web, questo tipo di attacco è diventato più difficile. L’attore della minaccia può ancora intercettare il traffico, ma non può fare nulla con esso nella sua forma crittografata.
Solo una delle tante minacce
Mentre è stato intorno molto più lungo di minacce moderne come ransomware, avvelenamento ARP è ancora una minaccia che le organizzazioni devono affrontare. Come tutte le minacce informatiche, è meglio affrontate attraverso un programma completo di sicurezza delle informazioni. Una soluzione come Varonis Threat Detection and Response può aiutarti a farti un’idea della posizione di sicurezza complessiva della tua organizzazione. Varonis Edge può aiutare a individuare i segni di esfiltrazione dei dati che possono verificarsi dopo un attacco di avvelenamento da ARP.