Vulnerabilità a livello di instradamento IP
Poichè i gateway di una rete locale rappresentano i dispositivi responsabili della consegna di datagrammi IP verso destinazioni remote, è essenziale che la loro amministrazione avvenga in maniera sicura.
Un router prevede generalmente varie modalità di configurazione e gestione.
La modalità più diffusa richiede un apposito terminale (console) direttamente connesso a una porta dedicata del dispositivo.
Un attento controllo del personale, in grado di accedere fisicamente alla console, è sufficiente a garantire un adeguato grado di sicurezza per questo specifico aspetto.
In molte realtà di rete complesse si preferisce però amministrare i router utilizzando strumenti per l’accesso remoto, sia via rete locale, sia tramite linea telefonica commutata.
In queste infrastrutture è indispensabile adottare meccanismi di autenticazione robusti per garantire un accettabile livello di sicurezza.
Una politica di controllo non sufficientemente attenta, può dare spazio ad attacchi esterni condotti da hacker.
Quando un hacker attacca un router difficilmente è interessato a sottrarre le informazioni memorizzate localmente (a parte eventuali password utilizzate dagli amministratori, conservate nel file di configurazione dell’apparato).
L’attaccante mira più spesso a modificare i parametri operativi del dispositivo e in special modo le informazioni mantenute nelle sue tabelle di routing.
Una modifica di tali tabelle può produrre varie conseguenze.
L’eliminazione di una route può dare origine a un attacco DOS, rendendo momentaneamente impossibile l’accesso a una rete remota da parte delle stazioni locali, ma la sostituzione di una route può dar luogo a un più sofisticato attacco di redirezione del traffico e conseguente intercettazione dei dati.
Per modificare il processo di routing dei datagrammi IP destinati a una rete remota è sufficiente modificare la route per quella rete.
Se non esiste alcuna regola specifica per raggiungere la rete è sufficiente aggiungere una route specifica, con un next hop diverso rispetto alla route di default.
L’unico limite per l’attaccante è dover specificare un next hop direttamente raggiungibile da parte del router compromesso.
Se l’indirizzo IP introdotto come next hop identifica un dispositivo di rete sotto il controllo dell’hacker, i datagrammi IP possono essere facilmente consegnati a qualsiasi macchina connessa dietro a tale gateway.
Alterando le regole di routing l’hacker può intercettare i pacchetti IP trasmessi e simulare la destinazione remota.
Se l’obiettivo dell’hacker è invece solo quello di registrare i dati scambiati tra le stazioni legittime, occorre reindirizzare i pacchetti dirottati alla legittima stazione di destinazione.
Per ottenere questo è sufficiente che i datagrammi IP ricevuti siano nuovamente trasmessi verso la destinazione finale, purchè l’attaccante un secondo gateway, che possiede informazioni di routing non compromesse.
La destinazione finale normalmente non può rendersi conto del diverso percorso compiuto dai datagrammi, in quanto il protocollo IP non registra gli hop attraversati.
Pur esistendo l’opzione per la memorizzazione del percorso entro l’intestazione dei datagrammi IP ( timestamp option), di norma questa funzionalità non viene utilizzata.
Un utente sospettoso può cercare di ricavare indicazioni sul numero di gateway attraversati registrando il valore del campo TTL nei datagrammi IP ricevuti.
Per evitare rivelazioni il TTL può essere modificato ad arte dall’attaccante per non mostrare alcuna anomalia.
Anche il limite iniziale di dover controllare un dispositivo posto a un solo hop di distanza dal gateway sotto attacco, è superabile.
L’attaccante può infatti utilizzare una tecnica di tunneling IP per creare interfacce virtuali punto-punto sul dispositivo, e specificare come terminazione remota l’indirizzo IP del router remoto, sempre sotto il suo controllo, anche quando questo è a piu hop di distanza.
Tramite uso di regole di routing avanzate (per esempio il policy routing degli apparati Cisco) è possibile dirottare il traffico indirizzato verso destinazioni direttamente connesse al gateway controllato dall’attaccante.
In questo scenario diviene tecnicamente possibile creare condizioni MiM (Man in the Middle) tramite redirezione bidirezionale del traffico IP.
Anche nell’eventualità di riuscire a impedire all’attaccante un accesso diretto al dispositivo, rimane la possibilità di alterare tabelle di routing utilizzando gli annunci relativi a un protocollo di routing.
Per poter condurre un simile attacco è condizione preliminare necessaria per l’attaccante:
- la conoscenza degli indirizzi IP delle interfacce fisiche e di loopback di un router;
- la raggiungibilità di tali indirizzi IP (la rete deve essere in grado di instradare pacchetti IP a essi destinati);
- la possibilità di iniettare pacchetti IP sulla rete target utilizzando indirizzo broadcast 255.255.255.255 e specifici indirizzi destinazione multicast.
Una corretta gestione della sicurezza della rete deve essere orientata a tenere nascoste queste informazioni agli utenti comuni in modo da rendere più complesso il compito dell’attaccante.