Hashcat è un'utilità di recupero password avanzata basata su CPU disponibile per Windows, Mac e Linux. Fornisce 7 modalità di attacco uniche (come Brute-force, Dictionary, Permutation, Prince, Table-Lookup, Combination ecc.) per oltre 100 algoritmi di hashing ottimizzati (come md5, sha256, sha512 ecc.). Hashcat è considerato lo strumento di recupero password basato su CPU più veloce al mondo. Nel frattempo, la controparte di Hashcat, oclHashcat, funziona su GPU molto più velocemente di Hashcat. La versione attuale di Hashcat è la 2.00 e può essere ottenuta dal suo sito Web.
Come vengono memorizzate le password?
Se un'applicazione o un servizio sta memorizzando la tua password, come Google, SSH su Linux, la password viene generalmente archiviata sotto forma di hash. Un hash è fondamentalmente un modo sicuro per archiviare le password basato su un algoritmo matematico che non è reversibile. Una volta che hai un hash, è teoricamente impossibile ottenere la password originale da esso.
Come decifrare le password hash?
Considera che un utente malintenzionato ottiene l'hash della password. Per decifrare una password dall'hash, deve iniziare a generare varie combinazioni di hash dalle password note basate sul dizionario fino a quando non corrisponde all'hash.
In sostanza, l'attaccante deve essere molto paziente poiché deve provare migliaia, milioni, miliardi e talvolta trilioni di password prima di trovare quella giusta!
Va bene, ma come fai a fare così tante ipotesi per trovare un hash corrispondente?
Qui, l'Hashcat strumento viene in tuo soccorso. Hashcat automatizza il processo di ipotesi e confronta i risultati per te.
In questo tutorial, spiegherei come utilizzare la versione CPU di Hashcat. Inoltre, poiché il mio sistema è a 64 bit, utilizzerei la versione a 64 bit di Hashcat.
Inizia il viaggio del cracking delle password…..
Scarica Hashcat:
Scarica l'ultimo Hashcat sulla tua distribuzione Linux (La mia distribuzione è Ubuntu) dal sito Web Hashcat.
$ wget https://hashcat.net/files/hashcat-2.00.7z
Per estrarre l'archivio, devi avere 7zip utilità installata. Se non lo hai sul tuo sistema, installalo:
Redhat/Centos/Fedora
$ yum install p7zip
Nel caso, se yum install non ha funzionato per te, quindi devi impostare il repository YUM che contiene il pacchetto p7zip .
Ubuntu/Debian
$ apt-get install p7zip
Disimballare:
Estrarre l'archivio utilizzando l'utility 7zip installata
Redhat/Centos/Fedora
$ 7za x hashcat-2.00.7z
Ubuntu/Debian
$ p7zip -d hashcat-2.00.7z
Ora passa alla directory Hashcat:
$ cd hashcat-2.00
Puoi vedere l'eseguibile binario come mostrato di seguito:
$ ls -l hashcat-cli*.binNell'ultima versione di HashCat 3.6.0
Il file binario è denominato hashcat64.bin se è a 64 bit e hashcat32.bin se è a 32 bit
In base all'installazione dell'hardware e del sistema operativo, scegli binario a 32 bit o 64 bit. Puoi scoprirlo usando il comando:
$uname -a Linux ubuntu 3.13.0-65-generic #106-Ubuntu SMP Fri Oct 2 22:08:27 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
Poiché il mio sistema operativo è a 64 bit, userei il binario Hashcat compilato su 64 bit (hashcat-cli64.bin). Solo per semplificarci la vita, copiamo il file binario nelle posizioni binarie standard come:/usr/bin/
$ cp hashcat-cli64.bin /usr/bin/
Collegamento a un modulo più breve :
ln -s /usr/bin/hashcat-cli64.bin /usr/bin/hashcat
Grande! D'ora in poi puoi usare il comando hashcat ogni volta che vuoi usare Hashcat come mostrato di seguito:
$ hashcat --help
Usciti per avviarlo, la prima cosa è passare alla directory degli esempi per vedere come funziona il cracking della password:
$ ls examples/
Gli esempi sono organizzati in base alla Modalità di attacco (A) e al tipo di hash (M) . Proviamo il semplice cracking del tipo di hash MD5 usando la modalità di attacco del dizionario. Passa il file hash e il file del dizionario delle password corrispondente come argomenti all'eseguibile hashcat come mostrato di seguito:
$ hashcat A0.M0.hash A0.M0.word Initializing hashcat v2.00 with 2 threads and 32mb segment-size...
Added hashes from file A0.M0.hash: 102 (1 salts)
b19cdd8f0b55cb888c97ec77ab1ad402:rQ-Vv2&kog_p+CMyI;/VFDD.|MQe0/eV6bi9i^"yWP('iT 73ff3971460e3d4490049086207e4a1e:$<-+1Jz?dPL)[;)mg<so'R 5Ri0':.m^Rfv?,x[G 7718d0884dcdd356c77de6ff4c0ad58e:>RHc ::::::::::::::::::::::::::::: ::::::::::::::::::::::::::::: All hashes have been recovered
Input.Mode: Dict (A0.M0.word) Index.....: 1/1 (segment), 102 (words), 2769 (bytes) Recovered.: 102/102 hashes, 1/1 salts Speed/sec.: - plains, 101 words Progress..: 102/102 (100.00%) Running...: 00:00:00:01 Estimated.: --:--:--:--
Started: Wed Dec 16 04:41:18 2015 Stopped: Wed Dec 16 04:41:20 2015
L'esecuzione di cui sopra potrebbe recuperare con successo 102 hash! Fantastico no? Ovviamente, decifrare gli hash nel mondo reale non sarà così semplice, ma questo è un ottimo primo passo.