Semplice attacco di spoofing DHCP

Continuando con la raccolta di attacchi informatici "semplici", un'interessante variante degli attacchi MitM può essere generata da una tecnica di inganno (Spoofing) utilizzando il protocollo DHCP.

DHCPDynamic Host Configuration Protocol è un protocollo di rete, basato sul paradigma client/server, utilizzato per l'assegnazione automatica dei parametri di configurazione di rete.

In una rete LAN, solitamente viene configurato un server DHCP dove sono indicate le configurazioni che devono essere concesse ai client DHCP, siano esse Gateway, DNS, Subnet mask e ovviamente indirizzo IP (quest'ultimo è preso da un pool di indirizzi o assegnato da un elenco statico dal MAC client).

Grazie al DHCP, quando un host è connesso alla rete, le suddette impostazioni e parametri vengono applicati automaticamente e non è richiesto alcun intervento da parte dell'amministratore di rete. Un tipico caso è quando colleghiamo un laptop alla rete domestica e il modem ci assegna le impostazioni di rete appropriate.

Funzionamento generaleFunzionamento normale del Protocollo DHCP indica che:

  • Inizialmente, un host client deve inviare un pacchetto "DISCOVERY" alla trasmissione di rete per richiedere l'assegnazione e l'invio dei parametri di configurazione.
  • Ciascun server DHCP in rete riceve il messaggio e risponde con un pacchetto "OFFERTA" in cui include le informazioni relative alla configurazione assegnata.
  • Il cliente può selezionare tutti o parte dei parametri ricevuti e rispondere con un messaggio “RICHIESTA” richiedendo l'assegnazione di detti parametri.
  • Infine, il server convalida l'assegnazione di questi parametri e risponde con un messaggio "DHCP ACK" indicando al client che la configurazione è stata riservata.

Il server DHCP "conosce" quegli indirizzi IP che ha assegnato così come gli indirizzi MAC dei computer che ha "configurato".

In genere l'indirizzo IP ha un "Tempo di locazione DHCP" chiamato "Tempo di locazione DHCP", che sostanzialmente indica il tempo durante il quale l'indirizzo IP viene assegnato all'host. Trascorso questo tempo, l'indirizzo IP può essere rinnovato (riavviato il conteggio del tempo di noleggio) o può essere assegnato un nuovo indirizzo.

1. Spoofing DHCP, semplice


Spoofing DHCPLa tecnica di attacco di inganno DHCP consiste fondamentalmente nell'assegnazione dei parametri di configurazione DHCP "da un server DHCP non autorizzato" sulla rete.

Il palco di più Semplice si verifica quando un utente malintenzionato avvia un'istanza del server DHCP sulla LAN offrendo impostazioni IP agli host che le richiedono. A questo punto, l'attaccante entra in una race condition con il DHCP legittimo della rete.

A volte un host può prendere le impostazioni dell'attaccante e talvolta le impostazioni DHCP legittime.
L'attaccante deve conoscere la configurazione di rete e sarà in grado di simulare una corretta assegnazione all'host (ad esempio assegnando l'indirizzo IP che sarebbe stato precedentemente assegnato dal DHCP legittimo), ma indicando, ad esempio, come Gateway o gateway predefinito, l'indirizzo IP dell'host Attaccante; così l'attaccante diventa il gateway predefinito dell'host e guadagna una posizione intermedia.

2. Verifica teorica


Alice è un host sulla rete, il suo server DHCP le assegna un indirizzo IP utilizzando DHCP.
C'è un aggressore che ha avviato un server DHCP con una configurazione appositamente manipolata, indicando che l'indirizzo IP deve essere assegnato ad Alice e in particolare che l'indirizzo IP dell'attaccante deve essere indicato come gateway predefinito.

Se Alice richiede la configurazione tramite DHCP, l'attaccante può vincere la gara per legittimare il DHCP e riconfigurare correttamente il gateway predefinito di Alice, costringendolo a utilizzare l'attaccante come gateway predefinito.

Sistemi coinvoltiAlice:
Indirizzo MAC: AA: BB: CC: 22: 33: 44
Indirizzo IP: 192.168.1.198/24
Sistema operativo: Windows XP

Portale di rete: (DNS + DHCP):
Indirizzo IP: 192.168.1.1/24
Sistema operativo: openwrt
dominio: home

Attaccante:
Indirizzo MAC: AA: BB: CC: 88: 88: 88
Indirizzo IP: 192.168.1.124/24
Sistema operativo: GNU / Linux Ubuntu 14.04
Dominio: dhcp.spoofed.casa

3. Scenario normale


Alice richiede prima un IP dal server DHCP della rete; in windows il terminale può essere utilizzato per simulare questa azione con il comando:
 C:\ipconfig/rinnova
Il server DHCP della rete assegna ad Alice un indirizzo IP e altri parametri di rete. Tra questi parametri è stato indicato che l'indirizzo IP del gateway predefinito è 192.168.1.1

Se una traccia a 8.8.8.8 viene eseguita nel terminale di Alice con il comando:

 C: \ tracert 8.8.8.8 -d
Si può notare che il primo hop è il gateway predefinito della rete, ovvero 192.168.1.1:

4. Scenario di attacco su Alice


L'attaccante vuole applicare una tecnica di spoofing DHCP su Alice.
Puoi farlo identificando l'indirizzo IP di Alice usando il DNS locale (nslookup), usando nbtscan o qualsiasi altro metodo.

L'attaccante installa un server DHCP, ad esempio isc-dhcp-server. Per fare ciò in Ubuntu, esegui in un terminale:

 $ sudo apt-get install isc-dhcp-server
Per configurare il server DHCP, l'attaccante utilizza dati noti, come IP di Alice, MAC di Alice (grazie ad ARP), Subnet, DNS, ecc. La configurazione viene eseguita modificando il file dhcpd.conf, in un terminale di
 $ sudo vim /etc/dhcp/dhcpd.conf
Per questo caso di studio, il file di configurazione dovrebbe essere simile a questo:

La sezione "subnet" definisce la sottorete, la maschera, il gateway di rete predefinito, il server dei nomi e così via.
È stato anche specificato come dominio dhcp.spoofed.casa (a proposito, solo per evidenziarlo negli screenshot di questo tutorial).

Si noti che di seguito è stata esplicitamente specificata una configurazione per l'host di Alice (ben differenziata dal suo indirizzo MAC). In particolare, l'indirizzo IP dell'attaccante è stato specificato come gateway per Alice tramite l'istruzione:

 router opzionali 192.168.1.124
E l'IP 192.168.1.198 è stato forzato ad essere assegnato al MAC di Alice, rispettando la configurazione assegnata inizialmente dal DHCP legittimo della rete:
… Hardware Ethernet AA: BB: CC: 22: 33: 44 indirizzo fisso 192.168.1.198… 
Una volta configurato, l'attaccante avvia il servizio DHCP con il comando:
 $ sudo /etc/init.d/isc-dhcp-server start
Sarebbe iniziato.

5. Alice è ingannata


Per simulare la race condition, in un ambiente controllato Alice può essere forzata a richiedere nuovamente la configurazione tramite DHCP.

Per fare ciò, Alice rilascia l'indirizzo IP assegnato (esegui il comando nel terminale di Alice):

 C:\ipconfig/release

Quindi richiedi nuovamente un indirizzo IP:

 C:\ipconfig/rinnova
Se l'attaccante "vince la gara" al server DHCP legittimo sulla rete, verranno assegnati i parametri di configurazione DHCP preconfigurati:

Alice ha ottenuto l'indirizzo IP "corretto" e gli è stato assegnato l'indirizzo IP dell'attaccante come gateway predefinito. Nota il dominio “dhcp.spoofed.casa, per riferimento alla configurazione iniziale. Da questo momento in poi, Alice invierà i pacchetti destinati a Internet all'attaccante, poiché le è stato detto che l'indirizzo IP 192.168.1.124 è il suo gateway predefinito. Se una traccia a 8.8.8.8 viene eseguita dal terminale di Alice, si può osservare il cambiamento nel primo salto:

6. Considerazioni finali


Inoltre l'attaccante potrebbe configurare l'inoltro dei pacchetti e con iptables fare una mascherata per controllare la situazione MitM. Tale configurazione non è stata inclusa in quanto non fa parte del proof of concept DHCP Spoofing, ma vale la pena menzionarla.

Ci sono altre tecniche leggermente più complesse da eseguire Spoofing DHCPQuesto è uno dei più semplici e, guarda caso, uno dei più frequenti.

Un'occorrenza tipica di questo attacco (anche se involontariamente dannoso) è solitamente su reti in cui un utente collega erroneamente un router wireless per accedere alla LAN tramite Wi-Fi. Se una porta LAN è connessa (la cosa corretta sarebbe connettere la porta WAN) alla rete locale, il router offrirà il servizio DHCP agli host della rete locale, competendo con il server DHCP legittimo della rete (ad esempio il router adsl).

Nelle reti gestite, la funzionalità "DHCP Snooping" viene spesso utilizzata per mitigare questi tipi di attacchi. Fondamentalmente ciò che viene fatto è indicare agli switch la porta a cui è collegato il DHCP legittimo. Indica il "percorso" attraverso gli Switch mediante il quale è consentito il traffico dei messaggi del servizio DHCP.

Ti è piaciuto e hai aiutato questo Tutorial?Puoi premiare l'autore premendo questo pulsante per dargli un punto positivo

Aiuterete lo sviluppo del sito, condividere la pagina con i tuoi amici

wave wave wave wave wave