Secondo capitolo della guida di Cain & Abel, l’ utilizzatissimo tool per il recovery delle password nei sistemi Windows.
Premesse:
1) La guida che vado a scrivere non va presa come un dogma, ci sono molte cose che neppure io conosco.
2) Siete tutti invitati a contribuire segnalando errori, approfondimenti, aggiornamenti o anche inviandomi vostre guide parziali per aiutarmi a completare questa.
3) La guida verrà ampliata costantemente, periodicamente scriverò una parte di essa e la pubblicherò su questo blog.
4) Ognuno può usufruirne come meglio crede, si chiede solo che in caso di copia totale o parziale venga citata la fonte: www.informaniaci.it secondo la filosofia open-source.
5) Il sottoscritto non si ritiene in alcun modo responsabile dei metodi di utilizzo del programma, infatti consiglio di utilizzarlo solo ed esclusivamente a casa propria, sul proprio computer, sul proprio router e non per nuocere o danneggiare altre persone. Si ricorda inoltre che le leggi vigenti sulla privacy puniscono penalmente chiunque si colleghi alla linea internet di terzi.
6) Per scrivere la guida cercherò di seguire quella ufficiale in inglese che potete trovare qui apportando alcune modifiche e tagliando o aggiungendo alcune parti.
Cain & Abel richiede la configurazione di alcuni parametri, tutto può essere impostato dalla finestra principale di dialogo(Configuration Dialog).
Scheda Sniffer
All’ interno di questa scheda si può impostare la scheda di rete che Cain utilizzerà per sniffare i pacchetti. Le ultime due check box servono per attivare o disattivare lo sniffer e l’ APR all’ avvio del programma. La terza invece serve per disabilitare la “Promiscuous mode” necessaria per alcuni attacchi. Lo sniffer è compatibile con la versione 2.3 o superiore dei driver di Winpcap. Con questi driver sono supportate soltanto le schede Ethernet.
Scheda APR
In questa scheda si può configurare l’ APR(Arp Poison Routing). Cain di default utilizza thread separati che inviano pacchetti ARP all’ host vittima ogni 30 secondi. Questo è necessario perché i pacchetti in entrata presenti nella ARP chache della macchina remota nel caso in cui non ci sia traffico. Dalla finestra di dialogo si può scegliere il tempo tra ogni ondata di pacchetti ARP: impostare questo parametro con pochi secondi potrebbe causare un elevato traffico di pacchetti ARP sulla rete, mentre impostarlo con un valore troppo alto potrebbe non produrre l’ effetto desiderato.
Le Opzioni di Spoofing(Spoofing Options) definiscono l’indirizzo con il quale Cain si autentificherà all’ interno della rete Ethernet, in particolare utilizzerà questo indirizzo per creare i pacchetti da inviare.. In questo caso l’ attacco ARP sarà completamente anonimo perché il MAC Address e l’indirizzo IP della macchina da cui lanciamo Cain non sarà mai inviato sulla rete.
Abilitando questa opzione bisogna considerare che:
- La sostituzione del MAC Address della scheda Ethernet può essere utilizzata soltanto se la macchina dalla quale viene lanciato l’attacco è connessa ad un HUB o ad uno SWITCH che non hanno attivato il blocco dei MAC Address. Se il blocco dei MAC è abilitato l’ HUB/SWITCH cercherà il vostro MAC all’ interno di una lista di indirizzi abilitati, se esso non sarà tra questi la connessione verrà chiusa.
- La sostituzione dell’indirizzo IP(Spoofing) deve essere fatta utilizzando un indirizzo libero della sottorete. Settando un Indirizzo IP che sia fuori dalla sottorete l’host remoto risponderà al suo gateway predefinito e non vedrete la sua risposta. Utilizzando un indirizzo IP già presente nella sottorete ci sarà un conflitto di IP e l’attacco sarà facilmente notato. Inseriamo deglii esempi di validi indirizzi IP di spoofing:
Indirizzo IP Reale |
Subnet Mask |
Range di indirizzi IP validi |
192.168.0.1 |
255.255.255.0 |
192.168.0.2 – 192.168.0.254 |
10.0.0.1 |
255.255.0.0 |
10.0.0.2 – 10.0.255.254 |
172.16.0.1 |
255.255.255.240 |
172.16.0.2 – 172.16.0.14 |
200.200.200.1 |
255.255.255.252 |
200.200.200.2 – 200.200.200.3 |
L’ indirizzo IP inserito viene automaticamente controllato dal programma premendo Apply, se l’ indirizzo è già presente nella sottorete verrete avvertiti con un messaggio.
- Il MAC Address che inseriamo non deve essere presente nella sottorete. La presenza di due MAC Address identici nella stessa LAN può causare conflitti all’ interno della sottorete. Per questo gli sviluppatori hanno deciso di non rendere facile la modifica del MAC Address dalla finestra di dialogo. Il valore di default è 001122334455 che è un indirizzo non valido, quindi si suppone che non sia presente all’interno della rete e che sia facilmente individuabile in caso di problemi. ATTENZIONE! Non è possibile avere sulla stessa rete due o più macchine che utilizzano Cain con lo stesso MAC modificato. E’ comunque possibile cambiare il proprio MAC Address modificando la voce di registro: “HKEY_CURRENT_USER\Software\Cain\Settings“
Scheda dei Filtri e delle Porte
Qui è possiblie attivare e disabilitare i filtri dello sniffer di Cain e i protocolli assegnati alle porte TCP/UDP. Cain cattura solo le informazioni di autentificazione e non l’intero contenuto di ogni pacchetto, comunque è possibile utilizzare il filtro Telnet per raccogliere, dentro un file, tutti i dati presenti in una sessione TCP modificando il relativo filtro della porta.
In questa scheda è possibile inoltre abilitare/disabilitare l’analisi dei protocolli di routing (HSRP, VRRP, EIGRP, OSPF, RIPv1, RIPv2) e l’ ARP-DNS che funziona da DNS Reply Rewriter.
Scheda dei campi HTTP
Questa scheda contiene la lista dei campi username e password che possono essere usati dal filtro dello sniffer HTTP. I cookies e i moduli HTML che viaggiano all’interno dei pacchetti HTTP vengono esaminati nel seguente modo: per ogni campo username vengono controllati tutti i campi password e se vengono individuati questi due parametri le credenziali vengono catturate e mostrate sullo schermo.
Il seguente cookie utilizza i campi “logonusername=” e “userpassword=” per l’autentificazione; se non vengono inclusi questi due campi nella lista lo sniffer non estrarrà le relative credenziali.
GET /mail/Login?domain=xxxxxx.xx&style=default&plain=0 HTTP/1.1
Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, application/x-shockwave-flash, */*
Referer: http://xxx.xxxxxxx.xx/xxxxx/xxxx
Accept-Language: it
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; (R1 1.3); .NET CLR 1.1.4322)
Host: xxx.xxxxxx.xx
Connection: Keep-Alive
Cookie: ss=1; ss=1; srclng=it; srcdmn=it; srctrg=_blank; srcbld=y; srcauto=on; srcclp=on; srcsct=web; ; video=c1; TEMPLATE=default;
Scheda Traceroute
Questa scheda permette di configurare il tracerout ICMP/UDP/TCP di Cain. E’ possibile risolvere i nomi degli host, usare ICMP Mask discovery e abilitare/disabilitare l’estrazione delle informazioni WHOIS.
Scheda Chellenge Spoofing
In questa scheda è possibile modificare il valore di challenge per riscrivere all’interno del pacchetto di autentificazione NTLM. Questa caratteristica può essere attivata velocemente dalla toolbar di Cain e deve essere usata con l’ APR. Un challenge fissato abilita il cracking delle NTLM hashes inviate sulla rete per mezzo delle RainbowTables.