Hashcat Tutorial

Hashcat Tutorial

Questo tutorial spiega come usare Hashcat per spezzare oltre 250 modalità hash attraverso diversi metodi di attacco.

Dopo aver letto questo tutorial, conoscerai le più importanti funzionalità di hashcat e come implementarle per rompere gli hash.

Introduzione funzionale a Hashcat

Hashcat è uno strumento molto potente. Vale la pena tenerlo conto e imparare le sue caratteristiche. Prima di iniziare con esempi, vediamo alcune delle funzionalità di Hashcat, inclusi tipi di attacco, hash rompicabili e impostazioni di chatset.

Hashcat è uno strumento molto flessibile che consente all'utente di ottimizzare e personalizzare gli attacchi per oltre 250 modalità hash classificate per categorie. Alcune di queste categorie sono mostrate nella tabella seguente.

CATEGORIA Supporto in modalità hash
Hash crudo MD4, MD5, Sha1, Sha2, Sha3, ecc.
Protocolli di rete WPA, Skype, Mysql Cram (Sha1), DNSSEC (NSEC3), ecc.
Forum, CMS, framework PHPBB3 (MD5), VBULLETIN, WordPress (MD5), Joomla (MD5), ecc.
Server di database Postgresql, Oracle, Mysql, ecc.
HTTP, SMTP, server LDAP Apache $ APR1 $ MD5, MD5APR1, MD5 (APR), NSLDAPS, SSHA-1 (Base64), Netscape LDAP SSHA, ecc.
Sistemi operativi Samsung Android/Windows Phone 8+ Password/Pin, Grub 2, Cisco, MacOS, ecc.
Archivi 7-zip, winzip, rar, ecc.
Crittografia a disco completo Luks, Android FDE, Veracript, Ecryptfs, ecc.
Documenti PDF, Microsoft Office, Apple Secure Notes.
Manager di password Portafoglio LastPass, Bitcoin/Litecoin.Dat, blockchain, il mio portafoglio, Keepass, ecc.

Nota: Puoi vedere l'elenco delle categorie complete su https: // gist.github.com/dwallraff/6a50b5d2649afeb1803757560c176401 o eseguendo il comando hashcat -help

Charshcat Charst:

Hashcat Ti consente di controllare i cartede per gli attacchi di forza bruta. Durante la forzatura dei bruto, è possibile applicare i seguenti caratteri integrati su ciascuna posizione della password.

Opzione bandiera Chatset
?l ABCDEFGHIJKLMNOPQRSTUVWXYZ
?u ABCDEFGHIJKLMNOPQRSTUVWXYZ
?D 0123456789
?H 0123456789abcdef
?H 0123456789abcdef
?S !"#$%& '()*+,-./:;?@[\]^_ '| ~
?UN ?l?u?D?S
?B 0x00 - 0xff

Ad esempio, è possibile definire il primo carattere della password come un carattere di maiuscolo specificando ?u seguito da 5 caratteri minuscoli (?l?l?l?l?l) e quattro ultimi numeri specificando ?D?D?D?D. Questo sembrerà così:

Hashcat -A 3 ?u?l?l?l?l?l?D?D?D?D

È inoltre possibile specificare quattro caratteri personalizzati che combinano diverse possibilità. Si specifica ogni chatset personalizzato aggiungendo 1, 2, 3 e 4. Ad esempio, per specificare un chatset che include 5 lettere e numeri minuscole, il comando sembra mostrato di seguito, perché ?l specifica i caratteri minuscola e ?D Specifica i numeri.

Hashcat -A 3 -1 ?l?D ?1?1?1?1?1

Hashcat Le opzioni di personalizzazione e ottimizzazione includono anche la selezione del dispositivo hardware per varie modalità di attacco, incluso il spiegato di seguito.

Modalità di attacco Hashcat:

  • Attacco di forza bruta (3): Questo tipo di attacco consiste in grandi tentativi di combinazione di carattere. Questa tecnica di attacco è stata interrotta su Hashcat ed è stata sostituita da attacchi di maschera.
  • Attacco combinato (1): Questa modalità consente di aggiungere ogni parola contenuta in una lista di parole alla fine di ogni contenitore di parole in una seconda lista di parole.
  • Attacco del dizionario (0): Questa modalità, chiamata anche "modalità dritta", prova tutte le righe contenute in un file come password. Questo è un semplice attacco di Word List.
  • Attacco ibrido: La modalità di attacco ibrido consente di combinare un attacco di dizionario con un attacco di forza bruta. Utilizzando questa modalità, è possibile aggiungere o preparare elementi della lista di parole a un attacco di Bruteforce.
  • Maschera Attacco (6 o 7): L'attacco della maschera è un miglioramento dell'attacco della forza bruta, con l'obiettivo di progettare attacchi di forza bruta "intelligenti" in cui l'utente ha il controllo del processo di generazione dei candidati password. Ad esempio, l'attacco della maschera consente agli utenti di definire modelli come una lettera maiuscola per la prima posizione della password solo candidat o di aggiungere le date alla fine del candidato password o prima, ecc. La modalità 6 abilita la maschera ibrida di Word Elist, mentre la modalità 7 abilita la maschera ibrida + Wordlist.

Questo attacco si traduce in tentativi più accurati e l'omissione o la riduzione dei candidati a password improbabili.

  • Attacco basato sulle regole: Questo è descritto dagli sviluppatori Hashcat come il tipo più difficile di attacco perché consiste nella programmazione della generazione dei candidati con funzioni per tagliare, modificare, estendere i candidati password.
  • Attacco a levetta: Questo tipo di attacco funziona se l'attacco basato sulle regole è abilitato. Ti consente di provare tutte le possibilità di parte superiore e minuscola per i candidati a password.

Iniziare con Hashcat:

Per iniziare sui sistemi Linux basati su Debian, eseguire il comando di seguito per installare Hashcat.

sudo apt install hashcat

Per altre distribuzioni Linux, è possibile scaricare ed estrarre il file 7zip compresso da https: // hashcat.net/hashcat/.

Per il primo esempio, userò un file chiamato Hashlist contenente due hash e una lista di parole chiamata Wordlist.

Il flag -m viene utilizzato per definire il tipo di hash. L'hash che voglio rompere è MD5; È un tipo 0. Puoi controllare come definire ciascun tipo di hash leggendo la pagina Man come mostrato di seguito e scorrendo verso il basso nella sezione Tipi di hash.

uomo hashcat

Puoi anche imparare tutti i tipi di attacco e come sono definiti sulla pagina Man, questo è stato precedentemente spiegato nella sezione Modalità di attacco Hashcat in questo tutorial.

Il primo esempio di attacco prende di mira un hash MD5 (-M 0) usando un attacco di dizionario (-A 0) per rompere gli hash contenuti nell'Hashlist, seguito dalla Wordlist.

HASHCAT -M 0 -A 0 Hashlist Wordlist

Hashcat inizierà a correre; Nel mio caso, sto usando una lista di parole fittizie contenente le liste di parole corrette, quindi come puoi vedere di seguito, Hashcat avverte la mia lista di parole è piccola.

Nota: Gli hash usati in questo tutorial sono:

DB6585658634149C23CCB4C72AF8E614
8d6c31287b2ba4d4ba11dbf65e8110fc

Come potete vedere, Hashcat gestito a decifrare hash contenenti "Linuxhint.com" E "Segui il suggerimento di Linux".

Vediamo cosa succede se eseguiamo di nuovo lo stesso attacco.

HASHCAT -M 0 -A 0 Hashlist Wordlist

Come puoi vedere prima di iniziare l'attacco, Hashcat ci informa che il risultato è già presente nel Potfile Perché l'abbiamo già decrittografato in precedenza.

Potfile dov'è Hashcat memorizza i risultati di hash rotti; Per impostazione predefinita, il Hashcat.potfile si trova nella directory nascosta .Hashcat all'interno della casa dell'utente (~/.Hashcat/Hashcat.potfile).

In questo caso, è necessario aggiungere l'opzione -show, come mostrato nell'esempio seguente.

HASHCAT -M 0 -A 0 Hashlist Wordlist -show

L'esempio seguente mostra come decrittografare un hash sha1. Il file chiamato sha1 contiene un hash sha1. Come puoi vedere, oltre a un nome diverso, l'unica differenza è la modalità hash, cambiata in 100 (SHA1). L'attacco è un attacco di dizionario come precedente.

Hashcat -m 100 -A 0 Sha1 Wordlist

Come puoi vedere, l'hash Decipt Sha1 LinuxHintPassword.

Quest'ultimo esempio mostra un attacco di forza bruta usando un Hashcat chatset per decrittografare una password numerica. In questo caso, so che è lunga una password numerica 6 caratteri. Usando il -3 sto istruendo Hashcat per eseguire un attacco di forza bruta e implementando 6 volte il ?d chatset, specifico per provare tutti i numeri 6 volte, uno per ogni carattere.

Hashcat -m 100 sha1.txt -a 3 ?D?D?D?D?D?D

Come puoi vedere, la password 123456 è stata correttamente decrittografata.

Conclusione:

Hashcat è uno strumento semplice ma potente per decrittografare centinaia di tipi di hash in pochi passi. È uno strumento multipiattaforma che può aiutarci a recuperare file zip protetti, documenti, WPA .File PCAP e oltre 250 diverse modalità di crittografia. Le sue caratteristiche, come gli attacchi di maschera, fanno Hashcat Uno strumento intelligente per eseguire attacchi intelligenti completamente personalizzabili dall'utente.

Spero che questo tutorial mostri come usare Hashcat è stato utile per te.