Introduzione
Secondo il sito ufficiale, Cain & Abel è uno strumento di recupero password per sistemi operativi Microsoft. Permette un facile recupero di vari tipi di password attraverso lo sniffing della rete, il cracking di password criptate utilizzando gli attacchi Dictionary, Brute-Force e Cryptanalysis, la registrazione di conversazioni VoIP, la decodifica di password criptate, il recupero di chiavi di rete wireless, la rivelazione di password box, la scoperta di password memorizzate nella cache e l’analisi dei protocolli di routing.
L’ultima versione è più veloce e contiene un sacco di nuove funzionalità come APR (ARP Poison Routing) che consente lo sniffing su LAN switched e attacchi Man-in-the-Middle. Lo sniffer in questa versione può anche analizzare protocolli criptati come SSH-1 e HTTPS e contiene filtri per catturare credenziali da una vasta gamma di meccanismi di autenticazione. La nuova versione contiene anche monitor per l’autenticazione dei protocolli di routing ed estrattori di rotte, cracker a dizionario e a forza bruta per tutti i comuni algoritmi di hashing e per diverse autenticazioni specifiche, calcolatori di password/hash, attacchi di crittoanalisi, decoder di password e alcune utilità non così comuni relative alla sicurezza della rete e dei sistemi.
Chi dovrebbe usare questo strumento?
Cain & Abel è uno strumento che sarà abbastanza utile per amministratori di rete, insegnanti, penetration tester professionisti, consulenti/professionisti della sicurezza, personale forense e fornitori di software di sicurezza.
Requisiti
I requisiti di sistema necessari per impostare con successo Cain & Abel sono:
- Almeno 10MB di spazio su disco rigido
- Sistema operativo Microsoft Windows 2000/XP/2003/Vista
- Winpcap Packet Driver (v2.3 o superiore)
- Airpcap Packet Driver (per sniffer wireless passivo / WEP cracker)
Installazione
Prima dobbiamo scaricare Cain & Abel, quindi vai alla pagina di download www.oxid.it/cain.html.
Dopo averlo scaricato, basta eseguire il pacchetto eseguibile autoinstallante e seguire le istruzioni di installazione.
Caratteristiche di Cain
Qui c’è una lista di tutte le caratteristiche di Cain che lo rendono un ottimo strumento per i test di penetrazione della rete:
Protected Storage Password Manager | Credential Manager Password Decoder |
LSA Secrets Dumper | Dialup Password Decoder |
Service Manager | APR (ARP Poison Routing) |
Route Table Manager | Network Enumerator |
SID Scanner | Registro Remoto |
Sniffer | Routing Protocol Monitors |
Sniffer completo di sessioni RDP per APR | Sniffer completo di sessioni SSH-1 per APR |
Full HTTPS sessions sniffer per APR | Full Sniffer di sessioni FTPS per APR |
Full sniffer di sessioni POP3S per APR | Full sniffer di sessioni IMAPS per APR |
Full LDAPS sessions sniffer per APR | Certificates Collector |
MAC Address Scanner con impronta OUI | Promiscuous-mode Scanner |
Wireless Scanner | PWL Cached Password Decoder |
802.11 Capture Files Decoder | Password Cracker |
Access (9x/2000/XP) Database Passwords Decoder | Attacchi di crittoanalisi |
Base64 Password Decoder | WEP Cracker |
Cisco Type-7 Password Decoder | Rainbowcrack-client online |
Cisco VPN Client Password Decoder | Enterprise Manager Password Decoder |
Calcolatore di token RSA SecurID | Calcolatore di hash |
TCP/UDP Table Viewer | TCP/UDP/ICMP Traceroute |
Cisco Config Downloader/Uploader (SNMP/TFTP) | Box Revealer |
Wireless Zero Configuration Password Dumper | Remote Desktop Password Decoder |
MSCACHE Hashes Dumper | MySQL Password Extractor |
Estrattore password Microsoft SQL Server 2000 | Estrattore password Oracle |
VNC Decodificatore di password | Decodificatore di chiavi di sistema |
Definizioni correlate
MAC: (da Wikipedia) “Un indirizzo Media Access Control (indirizzo MAC) è un identificatore unico assegnato alle interfacce di rete per le comunicazioni sul segmento fisico della rete. Gli indirizzi MAC sono usati per numerose tecnologie di rete e per la maggior parte delle tecnologie di rete IEEE 802, compresa Ethernet. Logicamente, gli indirizzi MAC sono usati nel sottolivello del protocollo Media Access Control del modello di riferimento OSI.
Gli indirizzi MAC sono spesso assegnati dal produttore di una scheda di interfaccia di rete (NIC) e sono memorizzati nel suo hardware, nella memoria di sola lettura della scheda o in qualche altro meccanismo del firmware. Se assegnato dal produttore, un indirizzo MAC di solito codifica il numero di identificazione registrato dal produttore e può essere indicato come l’indirizzo masterizzato. Può anche essere conosciuto come indirizzo hardware Ethernet (EHA), indirizzo hardware o indirizzo fisico. Un nodo di rete può avere più NIC e avrà quindi un unico indirizzo MAC per NIC.”
Sniffing: (da Wikipedia) “Un analizzatore di pacchetti (noto anche come analizzatore di rete, analizzatore di protocollo o packet sniffer, o per particolari tipi di reti, un Ethernet sniffer o wireless sniffer) è un programma per computer o un pezzo di hardware che può intercettare e registrare il traffico che passa su una rete digitale o parte di una rete. Mentre i flussi di dati attraversano la rete, lo sniffer cattura ogni pacchetto e, se necessario, decodifica i dati grezzi del pacchetto, mostrando i valori dei vari campi nel pacchetto, e analizza il suo contenuto secondo l’appropriato RFC o altre specifiche.”
ARP(da Wikipedia) “Address Resolution Protocol (ARP) è un protocollo di telecomunicazioni utilizzato per la risoluzione degli indirizzi di livello rete in indirizzi di livello link, una funzione critica nelle reti ad accesso multiplo. ARP è stato definito da RFC 826 nel 1982. È Internet Standard STD 37. È anche il nome del programma per manipolare questi indirizzi nella maggior parte dei sistemi operativi.”
Uso
Ora, dopo aver lanciato l’applicazione, dobbiamo configurarla per utilizzare la scheda di rete appropriata.Se hai più schede di rete, è meglio conoscere l’indirizzo MAC della scheda di rete che userai per lo sniffer.Per ottenere l’indirizzo MAC della tua scheda di interfaccia di rete, fai quanto segue:
1- Apri il prompt di CMD.
/p>
2- Scrivi il seguente comando “ipconfig /all”.
3- Determinare l’indirizzo MAC degli adattatori Ethernet desiderati, scriverlo su Notepad, e poi usare queste informazioni per aiutare a determinare quale NIC selezionare nell’applicazione Cain.
Ora fare clic suConfigura nel menu principale. Si aprirà la finestra di dialogo di configurazione dove è possibile selezionare la scheda di interfaccia di rete desiderata.
Ora passiamo attraverso le schede della finestra di configurazione e diamo una breve occhiata alla maggior parte di esse:
Sniffer Tab:
Questa scheda ci permette di specificare quale scheda di interfaccia Ethernet useremo per lo sniffing.
Scheda ARP:
Questa scheda ci permette di configurare l’ARP poison routing per eseguire un attacco ARP poisoning, che inganna il computer della vittima impersonando altri dispositivi per ottenere tutto il traffico che appartiene a quel dispositivo, che di solito è il router o un server importante.
Scheda Filtri e Porte:
Questa scheda ha i servizi più standard con la loro porta predefinita in esecuzione.è possibile cambiare la porta cliccando con il tasto destro del mouse sul servizio di cui si vuole cambiare la porta e quindi abilitarlo o disabilitarlo.
Filtri sniffer di Caino e porta TCP/UDP del protocollo di applicazione.
Scheda CampiHTTP:
Ci sono alcune caratteristiche di Cain che analizzano le informazioni dalle pagine web visualizzate dalla vittima come LSA Secrets dumper, HTTP Sniffer e ARP-HTTPS, quindi più campi aggiungi ai campi username e password, più catturi nomi utente e password HTTP dalle richieste HTTP e HTTPS. Ecco un esempio:
Il seguente cookie usa i campi “logonusername=” e “userpassword=” per l’autenticazione. Se non si includono questi due campi nella lista, lo sniffer non estrarrà le credenziali relative.
GET /mail/Login?domain=xxxxxx.xx&style=default&plain=0 HTTP/1.1
Accetta: 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 (compatibile; 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; [email protected]; ss=1; srclng=it; srcdmn=it; srctrg=_blank; srcbld=y; srcauto=on; srcclp=on; srcsct=web; userpassword=password; video=c1; TEMPLATE=default;
Traceroute Tab:
Traceroute è una tecnica per determinare il percorso tra due punti semplicemente contando quanti salti il pacchetto impiegherà dalla macchina sorgente per raggiungere la macchina destinazione. Cain aggiunge anche altre funzionalità che permettono la risoluzione di hostname, la risoluzione di Net mask e la raccolta di informazioni Whois.
Scheda Certificate Spoofing:
Questa scheda permette lo spoofing dei certificati.Da Wikipedia:
“Nella crittografia, un certificato a chiave pubblica (noto anche come certificato digitale o certificato di identità) è un documento elettronico che utilizza una firma digitale per legare una chiave pubblica con un’identità – informazioni come il nome di una persona o un’organizzazione, il suo indirizzo, e così via. Il certificato può essere usato per verificare che una chiave pubblica appartenga a un individuo.
In un tipico schema di infrastruttura a chiave pubblica (PKI), la firma sarà di un’autorità di certificazione (CA). In uno schema di web of trust, la firma è dell’utente (un certificato autofirmato) o di altri utenti (“endorsement”). In entrambi i casi, le firme su un certificato sono attestazioni da parte del firmatario del certificato che le informazioni sull’identità e la chiave pubblica appartengono insieme.”
Possiamo semplicemente pensarlo come una sorta di dati (suite di cifratura & Chiave pubblica e alcune altre informazioni sul proprietario del certificato) che ha informazioni sul server di destinazione ed è criptato da società fidate (CA) che sono autorizzate a creare questi tipi di dati.Il server invia il proprio certificato all’applicazione client per assicurarsi di parlare con il server giusto.
Tabella del raccoglitore di certificati:
Questa scheda raccoglierà tutti i certificati avanti e indietro tra server e client impostando gli IP proxy e le porte che lo ascoltano.
Tabella Challenge Spoofing:
Qui è possibile impostare il valore di sfida personalizzato da riscrivere nei pacchetti di autenticazione NTLM. Questa funzione può essere attivata rapidamente dalla barra degli strumenti di Cain e deve essere usata con APR. Una sfida fissa permette il cracking degli hash NTLM catturati in rete per mezzo di Rainbow Tables.
Password Cracking
Ora è il momento di parlare della scheda cracker, la caratteristica più importante di Cain.Quando Cain cattura alcuni hash LM e NTLM o qualsiasi tipo di password per qualsiasi protocollo supportato, Cain li invia automaticamente alla scheda Cracker.Ecco come importare il file SAM:
Ecco i 4 hash NTLM e LM che appariranno come la seguente immagine:
E ecco tutte le possibili tecniche di password nella seguente immagine:
Come potete vedere dall’immagine precedente, ci sono vari tipi di tecniche che sono molto efficaci nel cracking delle password.Vedremo ciascuna delle loro definizioni.
Attacco a dizionario:
Da Wikipedia: “Un attacco a dizionario utilizza una tecnica mirata di provare successivamente tutte le parole in una lista esaustiva chiamata dizionario (da una lista di valori prestabilita). In contrasto con un attacco di forza bruta, dove una grande porzione di spazio chiave viene cercata sistematicamente, un attacco a dizionario prova solo le possibilità che hanno più probabilità di successo, tipicamente derivate da una lista di parole per esempio un dizionario (da qui la frase attacco a dizionario). Generalmente, gli attacchi da dizionario hanno successo perché molte persone hanno la tendenza a scegliere password brevi (7 caratteri o meno), parole singole trovate nei dizionari o semplici variazioni facilmente prevedibili delle parole, come l’aggiunta di una cifra. Tuttavia queste sono facili da sconfiggere. L’aggiunta di un singolo carattere casuale nel mezzo può rendere gli attacchi del dizionario insostenibili.”
Attacco brute forcing:
Da Wikipedia: “In crittografia, un attacco di forza bruta, o ricerca esaustiva della chiave, è un attacco crittoanalitico che può, in teoria, essere usato contro qualsiasi dato crittografato (ad eccezione dei dati crittografati in modo teoricamente sicuro). Tale attacco può essere utilizzato quando non è possibile sfruttare altre debolezze in un sistema di crittografia (se esistono) che renderebbero il compito più facile. Consiste nel controllare sistematicamente tutte le possibili chiavi fino a trovare la chiave corretta. Nel caso peggiore, questo comporterebbe l’attraversamento dell’intero spazio di ricerca.
La lunghezza della chiave usata nel cifrario determina la fattibilità pratica di eseguire un attacco brute-force, con chiavi più lunghe esponenzialmente più difficili da decifrare di quelle più corte. Un cifrario con una lunghezza della chiave di N bit può essere rotto in un tempo peggiore proporzionale a 2N e un tempo medio della metà. Gli attacchi brute-force possono essere resi meno efficaci offuscando i dati da codificare, cosa che rende più difficile per un attaccante riconoscere quando ha decifrato il codice. Una delle misure della forza di un sistema di crittografia è quanto tempo impiegherebbe teoricamente un attaccante per montare un attacco brute-force di successo contro di esso.”
Attacco di crittanalisi (usando la Rainbow Table):
Da Wikipedia: “Una rainbow table è una tabella precalcolata per l’inversione delle funzioni hash crittografiche, di solito per decifrare gli hash delle password. Le tabelle sono solitamente utilizzate per recuperare la password in chiaro, fino ad una certa lunghezza che consiste in un insieme limitato di caratteri. È un esempio pratico di un compromesso spazio-tempo, utilizzando più tempo di elaborazione del computer al costo di meno memoria quando si calcola un hash ad ogni tentativo, o meno tempo di elaborazione e più memoria quando si confronta con una semplice tabella di ricerca con una voce per hash. L’uso di una funzione di derivazione della chiave che utilizza un sale rende questo attacco impossibile. Le tabelle arcobaleno sono un perfezionamento di un precedente, più semplice algoritmo di Martin Hellman.”
Come fare una tabella arcobaleno?
Ci sono molti strumenti che creano una tabella arcobaleno e ci sono molte tabelle arcobaleno già disponibili su internet.Fortunatamente, Cain viene fornito con uno strumento chiamato winrtgen, che si trova nella propria cartella nell’installazione.
Sarà necessario scegliere l’algoritmo ahash, la lunghezza minima e massima della password, e infine il charset che la password utilizzerà.Poi premere OK.
Conclusione
Cain and Abel è un potente strumento che fa un ottimo lavoro nel cracking delle password. Può craccare quasi tutti i tipi di password, e di solito è solo una questione di tempo prima di ottenerlo.