Il Dynamic Host Con­fi­gu­ra­tion Protocol (DHCP) facilita la con­fi­gu­ra­zio­ne della rete: invece di con­fi­gu­ra­re ogni client, ogni PC, ogni smart­pho­ne e ogni di­spo­si­ti­vo abilitato alla rete in­di­vi­dual­men­te, oggi viene uti­liz­za­to so­prat­tut­to il DHCP. I singoli par­te­ci­pan­ti alla rete ricevono i ri­spet­ti­vi indirizzi IP, le subnet mask e altre in­for­ma­zio­ni tramite un server. Questo non solo sem­pli­fi­ca il lavoro con reti di grandi di­men­sio­ni, ma minimizza anche le fonti di errore: poiché l'as­se­gna­zio­ne degli indirizzi è dinamica, è im­pos­si­bi­le che a due di­spo­si­ti­vi venga assegnato lo stesso indirizzo IP. Riduce inoltre lo spazio di in­di­riz­za­men­to richiesto dato che, se un di­spo­si­ti­vo si scollega dalla rete, l'in­di­riz­zo IP torna au­to­ma­ti­ca­men­te fruibile per un nuovo utente di rete.

Questa sem­pli­fi­ca­zio­ne crea tuttavia anche una via d'accesso per i criminali. Quando si affida a qualcun altro il proprio lavoro, si rinuncia ine­vi­ta­bil­men­te anche al controllo e non ci ac­cor­gia­mo più di cosa avviene dietro le quinte. Questo può accadere anche con il DHCP. Una soluzione c'è: il co­sid­det­to Dhcp snooping. Come funziona questa tec­no­lo­gia di sicurezza?

A cosa serve il Dhcp snooping?

Con il DHCP, un server si assicura che i singoli client ricevano la loro con­fi­gu­ra­zio­ne. A tale scopo, il client invia in­nan­zi­tut­to una richiesta alla rete tramite broadcast. Il par­te­ci­pan­te alla rete vuole in questo modo de­ter­mi­na­re quali server DHCP sono di­spo­ni­bi­li e possono ri­spon­de­re. Tutti i server DHCP di­spo­ni­bi­li ri­spon­do­no a questa richiesta. Se alla rete sono collegati più server, il client seleziona quello che invia per primo la risposta. Con questo server DHCP il client esegue l'as­se­gna­zio­ne degli indirizzi. Il punto debole del sistema sta proprio qui, la porta d'accesso per i criminali.

Qui infatti possono essere immessi nella rete ulteriori server (i co­sid­det­ti Server rogue DHCP). Se la risposta di uno di questi server riesce a rag­giun­ge­re il client per primo, il par­te­ci­pan­te alla rete riceve le in­for­ma­zio­ni di con­fi­gu­ra­zio­ne del server dannoso. Il server rogue DHCP invierà quindi dati errati o ma­ni­po­la­ti e il client viene con­fi­gu­ra­to in modo errato. In questo modo il client può essere in­di­riz­za­to verso un gateway sbagliato, il co­sid­det­to DHCP spoofing. Tramite il gateway, i criminali possono re­gi­stra­re il tra­sfe­ri­men­to dei dati e ottenere in­for­ma­zio­ni sensibili, cir­co­stan­za che può essere definita anche come attacco man in the middle. L'as­se­gna­zio­ne errata degli indirizzi può invece causare un attacco denial of service. Questo tipo di attacco paralizza l'intera rete. Il Dhcp snooping impedisce il contatto con server dannosi.

Fatto

Nella maggior parte delle reti do­me­sti­che, siano esse LAN o WLAN, il router assume la funzione di server DHCP. Questo tuttavia non elimina i pericoli legati al DHCP spoofing, perché in linea di principio ogni di­spo­si­ti­vo può diventare un server DHCP. I criminali possono, ad esempio, collegare un laptop alla WLAN per con­trol­la­re l'as­se­gna­zio­ne degli indirizzi.

Il Dhcp snooping non protegge comunque soltanto dalle azioni criminali, ma anche dalle fonti di errore create dall'uso scon­si­de­ra­to di router ag­giun­ti­vi. L'in­stal­la­zio­ne di un nuovo router in una rete esistente può scom­bi­na­re il DHCP portando il nuovo router ad assegnare indirizzi che non do­vreb­be­ro essere assegnati. Questo può causare errori di con­nes­sio­ne. So­prat­tut­to in contesti aziendali possono sorgere problemi se i di­pen­den­ti collegano i propri di­spo­si­ti­vi alla rete senza avvisare l'am­mi­ni­stra­to­re di rete.

Che cos'è il Dhcp snooping?

Il Dhcp snooping è una funzione di sicurezza del secondo livello del modello OSI. La funzione è integrata nello switch che collega i client con i server DHCP. In poche parole, si tratta di un pro­to­col­lo che controlla in­nan­zi­tut­to tutte le in­for­ma­zio­ni DHCP che passano at­tra­ver­so lo switch. Solo i pacchetti au­to­riz­za­ti da server af­fi­da­bi­li rag­giun­go­no i client.

Fatto

Cisco è stato il primo pro­dut­to­re a uti­liz­za­re il Dhcp snooping nei suoi di­spo­si­ti­vi. L'azienda è stata inoltre coautrice di RFC 7513, nel quale viene spiegato il principio. Adesso il numero di pro­dut­to­ri di pe­ri­fe­ri­che di rete che offrono questa funzione di sicurezza (talvolta con de­no­mi­na­zio­ni diverse) nei loro di­spo­si­ti­vi è no­te­vol­men­te aumentato.

In questo modo un server rogue DHCP può ancora ricevere un pacchetto DH­CP­DI­SCO­VER (richiesta di un client per un server DHCP), perché ascolta il broadcast, e inviare un pacchetto DHCPOFFER (risposta alla richiesta), che tuttavia non rag­giun­ge­rà nessun client. Il Dhcp snooping nello switch rileva che il pacchetto non proviene da un server af­fi­da­bi­le o che contiene in­for­ma­zio­ni false, bloccando l'inoltro.

Porte af­fi­da­bi­li

Per garantire che solo server corretti possano in­ter­ve­ni­re nel­l'as­se­gna­zio­ne delle in­for­ma­zio­ni di con­fi­gu­ra­zio­ne, il Dhcp snooping svolge diversi passaggi. Per prima cosa definisce una porta sicura per i vostri server. Tutti i di­spo­si­ti­vi che tentano di accedere alla rete tramite un'altra porta sono con­si­de­ra­ti insicuri. Questo include anche tutti i clienti. Ciò significa che un host che esegue un server DHCP che non è stato approvato dal­l'am­mi­ni­stra­to­re è con­si­de­ra­to insicuro. Quindi se arriva un pacchetto DHCP, che può essere inviato da un solo server (DHCPOFFER, DHCPACK, DHCPMAK), at­tra­ver­so una porta non at­ten­di­bi­le, lo switch blocca l'inoltro e il client non riceverà l'in­for­ma­zio­ne.

Dhcp Snooping Database Binding

Un ag­gres­so­re può cercare anche di di­stur­ba­re la rete fin­gen­do­si uno dei client esistenti e ri­fiu­tan­do le richieste del server DHCP in sua veste. Lo snooping DHCP utilizza quindi una banca dati, che viene creata e ag­gior­na­ta dal sistema stesso. Il pro­to­col­lo legge tutte le in­for­ma­zio­ni DHCP (ma non i dati effettivi dopo l'av­ve­nu­ta con­nes­sio­ne) ed estrae i dettagli per il database del Dhcp snooping.

Il sistema archivia nel database tutti gli host che sfruttano porte non at­ten­di­bi­li. Le in­for­ma­zio­ni raccolte includono l'indirizzo MAC, l'indirizzo IP associato, la porta switch uti­liz­za­ta, la sottorete (VLAN) e la durata del lease time. Questo permette al Dhcp snooping di garantire che solo i client originali, che hanno par­te­ci­pa­to alla co­mu­ni­ca­zio­ne, possano inviare comandi al server perché, solo in questi casi, l'in­di­riz­zo MAC e la porta switch del di­spo­si­ti­vo cor­ri­spon­do­no alle in­for­ma­zio­ni me­mo­riz­za­te nel database.

Fatto

Anche altre misure di sicurezza come ARP In­spec­tion o IP Source Guard accedono al database del Dhcp snooping.

Log

Alcuni di­spo­si­ti­vi di rete possono inoltre generare un rapporto sulla procedura di difesa nel­l'am­bi­to del Dhcp snooping. I log possono essere inoltrati per la suc­ces­si­va analisi. La procedura registra due tipi di errori nella do­cu­men­ta­zio­ne: da un lato la di­scre­pan­za tra l'in­di­riz­zo MAC corrente e le in­for­ma­zio­ni me­mo­riz­za­te nel database e, dal­l'al­tro, pacchetti del server inviati tramite una porta non at­ten­di­bi­le.

Nella maggior parte dei casi, il primo tipo di messaggio di errore è causato da aspetti di rete mal im­ple­men­ta­ti in un di­spo­si­ti­vo client e in genere non rap­pre­sen­ta­no motivo di pre­oc­cu­pa­zio­ne. Il secondo tipo di messaggio di errore, invece, indica intenti criminali, qualcuno ha cioè de­li­be­ra­ta­men­te cercato di in­fil­trar­si nella rete con un server rogue DHCP. Dato che il Dhcp snooping registra tutto, è possibile indagare in modo mirato su questi casi.

Consiglio

I server DHCP possono in­fil­trar­si nella rete a vostra insaputa. Tuttavia, questi co­sid­det­ti server DHCP falsi possono essere rilevati sotto forma di pacchetto DH­CP­DI­SCO­VER. Il server maligno, ri­spon­den­do alla richiesta, si rivela.

Option 82

Una sicurezza ancora maggiore si ottiene abi­li­tan­do l'option 82, nota anche come DHCP relay agent in­for­ma­tion, che prevede il coin­vol­gi­men­to attivo dello switch nella co­mu­ni­ca­zio­ne tra client e server. Questa procedura è utile se client e server non fanno parte della stessa sottorete. Quando il client invia una richiesta al server DHCP, lo switch aggiunge in­for­ma­zio­ni ulteriori al­l'hea­der della richiesta. Grazie a queste in­for­ma­zio­ni, il server può risalire allo switch e quindi alla posizione del client.

Il server DHCP legge i dettagli ag­giun­ti­vi e assegna gli indirizzi IP in base alle in­for­ma­zio­ni sulla posizione. Il server invia il pacchetto di risposta al client tramite lo switch. Se nel momento in cui il pacchetto raggiunge lo switch le in­for­ma­zio­ni contenute sono rimaste invariate, questo riconosce che la co­mu­ni­ca­zio­ne avviene ef­fet­ti­va­men­te at­tra­ver­so di esso. A questo punto il di­spo­si­ti­vo cancella i dati del­l'op­tion 82 dal­l'hea­der e inoltra la risposta.

Consiglio

Per uti­liz­za­re l'option 82, il Dhcp snooping deve essere abilitato glo­bal­men­te. Anche il server deve essere in grado di gestire le in­for­ma­zio­ni ag­giun­ti­ve. Al­tri­men­ti il server DHCP ignora sem­pli­ce­men­te i dati del­l'op­tion 82 e tratta la richiesta del client come una normale richiesta DHCP.

Vai al menu prin­ci­pa­le