Sto provando a eseguire un attacco Man in the Middle sul mio cellulare, ho due schede wireless, una incorporata nel portatile, con i driver ARW2285, la seconda è una scheda Alfa AWUS036NHA con un driver AR9271. Sto usando la carta alfa (wlan1) per creare un router virtuale con i seguenti comandi:
$ airmon-ng start wlan1
$ iwconfig wlan1 channel 5
$ iwconfig mon0 channel 5
$ airbase-ng -e FreeWiFi -c 5 mon0
Tutto ciò sembra funzionare, viene creato un AP e posso provare a connettermi a questo con il mio telefono, e visualizza qualcosa sulla falsariga di "Ottenere un indirizzo IP".
$ ifconfig at0 up
Sopra ho richiamato l'interfaccia at0, ho provato ad assegnare anche un IP (0.0.0.0), anche con un IP valido (ad esempio x.x.x.next_available_number), e nessuno dei due sembra funzionare. Ho anche provato ad applicare un indirizzo a wlan0, l'interfaccia wireless connessa a Internet, questo non sembra funzionare e mi impedisce anche di ottenere la connessione a Internet.
$ brctl addbr m
$ brctl addif m at0
$ iw dev wlan0 set 4addr on
$ brctl addif m wlan0
Sopra creo il bridge e aggiungo entrambe le interfacce, wlan0 non è solitamente utilizzabile nel bridge senza il comando iw. Quindi faccio apparire il bridge, a questo punto assegno il bridge a un indirizzo IP, le interfacce bridge, entrambe o nessuna delle due? Ho provato molte varianti e nessuna sembra funzionare:
$ ifconfig m up
o
$ ifconfig m x.x.x.x up
Il passo finale (a quanto ho capito), è quello di eseguire DHCP sul ponte. Provo a farlo con il seguente comando:
n$ dhclient m
Di solito questo programma impiega del tempo per funzionare e non fornisce assolutamente alcun output. A un certo punto mi ha chiesto di installare un pacchetto "phonon-backend-gstreamer", cosa che ho fatto. Ma ancora non funziona.
Se guardo il telefono dice "Ottieni indirizzo IP", in wireshark, su at0, vedo alcune richieste DHCP e trasmissioni ARP, tuttavia alla fine il telefono si arrende e dice qualcosa come "Evita la connessione internet".
Quindi, ci sono dei passaggi ovvi che ho perso, o forse qualcosa è stato fatto in un ordine errato? Fammi sapere se qualcosa non è chiaro, grazie in anticipo!