0Pricing
Ethical Hacking Academy · Lezione

Cracking degli hash

Identificazione e attacco

Cracking degli hash è una lezione Ethical Hacking Academy gratuita su CoddyKit. Questa è la lezione 4 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Ethical Hacking Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Ethical Hacking Academy include 4 lezioni in totale.

Perché craccare gli hash?

Durante un incarico recupererà spesso hash di password da database, file di configurazione o dump della memoria. Craccarli conferma la debolezza delle password e dimostra al cliente l'impatto concreto.

Ricordi: l'hashing è un processo a senso unico. Non è possibile invertire direttamente un hash. Si procede invece ipotizzando degli input, calcolando l'hash di ogni ipotesi e confrontandolo con quello obiettivo.

Passaggio 1: identificare l'hash

Prima di eseguire il cracking deve sapere quale algoritmo ha prodotto l'hash. Gli indizi provengono dalla lunghezza e dal formato:

  • 32 caratteri esadecimali indicano probabilmente MD5.
  • 40 caratteri esadecimali indicano probabilmente SHA-1.
  • 64 caratteri esadecimali indicano probabilmente SHA-256.
  • Se inizia con $2b$, significa bcrypt; $argon2 significa Argon2.

Strumenti di identificazione

Gli strumenti automatizzano l'identificazione degli hash, così non deve procedere per tentativi. hashid e hash-identifier analizzano il formato e suggeriscono gli algoritmi più probabili.

L'output indica quale numero di mode passare allo strumento di cracking.

hashid '5f4dcc3b5aa765d61d8327deb882cf99'
# Suggests: MD5, MD4, NTLM ...

Attacchi a dizionario

Un attacco a dizionario (wordlist) prova ogni parola di un elenco, calcolandone l'hash e confrontandolo. È veloce e individua l'enorme numero di utenti che scelgono password comuni.

La famosa wordlist rockyou.txt contiene milioni di password reali trapelate ed è il punto di partenza predefinito per la maggior parte dei cracking.

Attacchi a forza bruta

Un attacco di forza bruta prova ogni possibile combinazione di caratteri. Prima o poi ha successo, ma il costo cresce esponenzialmente.

Può limitarlo con una mask: per esempio, esattamente 8 caratteri composti da minuscole e cifre. Le mask rendono praticabile la forza bruta mirata quando conosce la politica delle password.

?l = lowercase  ?u = uppercase  ?d = digit  ?s = symbol
# Mask ?u?l?l?l?l?d?d = Capital + 4 lower + 2 digits

Attacchi basati su regole

Le persone modificano le parole di base in modo prevedibile: 'password' diventa 'Password1!'. Gli attacchi basati su regole applicano trasformazioni (iniziale maiuscola, aggiunta dell'anno, sostituzione di lettere con numeri) a ogni voce della wordlist.

Questo consente di individuare password umane realistiche senza il costo della forza bruta completa. Il ruleset best64 è un punto di partenza popolare ed efficiente.

Hashcat

hashcat è il principale strumento di cracking con accelerazione GPU. Utilizza codici numerici di mode per ogni algoritmo e un flag di modalità di attacco (-a 0 dizionario, -a 3 forza bruta).

Le GPU rendono hashcat enormemente più veloce del cracking su CPU per hash veloci come MD5 e SHA.

hashcat -m 0 -a 0 hashes.txt rockyou.txt
# -m 0 = MD5, -a 0 = dictionary attack

John the Ripper

John the Ripper è un altro strumento di cracking classico, efficace su CPU e compatibile con numerosi formati. Spesso rileva automaticamente il tipo di hash.

John dispone di utili strumenti di supporto, come unshadow, per combinare /etc/passwd e /etc/shadow di Linux in un file sottoponibile a cracking.

unshadow /etc/passwd /etc/shadow > combined.txt
john --wordlist=rockyou.txt combined.txt
john --show combined.txt

Perché salt e hash lenti sono efficaci

La velocità di cracking dipende fortemente dall'algoritmo:

  • Una GPU può provare miliardi di ipotesi MD5 al secondo.
  • bcrypt o Argon2 possono consentire intenzionalmente solo alcune migliaia di tentativi al secondo.

I salt obbligano inoltre a craccare ogni hash separatamente, eliminando il vantaggio delle rainbow table. È esattamente per questo che i difensori utilizzano hash lenti con salt.

Ricerche online ed etica

Per gli hash veloci senza salt, database online come CrackStation contengono ricerche precalcolate e spesso craccano istantaneamente gli hash comuni.

Etica: cracchi solo gli hash per i quali dispone dell'autorizzazione. Craccare credenziali reali senza permesso è illegale. Durante gli incarichi, segnali le password craccate come prova di una politica debole e non le riutilizzi per scopi malevoli.

Stimare il lavoro necessario

Prima di dedicare ore al cracking, ne valuti la fattibilità:

  • Velocità dell'algoritmo: MD5 si cracca rapidamente; bcrypt è lento per progettazione.
  • Complessità della password: la lunghezza e l'insieme di caratteri fanno esplodere lo spazio delle chiavi.
  • Hardware: una potente configurazione GPU supera di gran lunga la CPU di un laptop.

Se una password lunga e casuale protetta con bcrypt e salt richiederebbe secoli, passi ad altri percorsi di attacco invece di tentare la forza bruta.

Controllo rapido

Ha acquisito un dump del database. Decida quale sia la prima mossa più intelligente.

Riepilogo

Ha appreso il flusso di lavoro per il cracking degli hash:

  • Identifichi l'algoritmo in base alla lunghezza/al formato utilizzando hashid.
  • Aumenti il costo degli attacchi in modo graduale: prima dizionario, poi regole, infine brute force con maschera.
  • Utilizzi hashcat (GPU) e John the Ripper (CPU, rilevamento automatico).
  • I salt e gli hash lenti (bcrypt, Argon2) riducono drasticamente la velocità di cracking.
  • Operi sempre entro i limiti dell'autorizzazione.

Questo completa il modulo Crittografia per hacker. Modulo successivo: Anonimato e OPSEC.

Domande Frequenti

La lezione «Cracking degli hash» è gratuita?

Sì — il testo completo di «Cracking degli hash» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Ethical Hacking Academy, passa a CoddyKit PRO. Il corso Ethical Hacking Academy include 4 lezioni in totale.

Cosa imparerò in «Cracking degli hash»?

Identificazione e attacco Eserciti Ethical Hacking Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare Ethical Hacking Academy?

Non è richiesta alcuna esperienza precedente. Ethical Hacking Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 4 di 4.

Quanto tempo richiede la lezione «Cracking degli hash»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione Ethical Hacking Academy?

Sì. Ogni lezione Ethical Hacking Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. Codifica e cifratura a confronto
  2. Hashing
  3. Crittografia simmetrica e asimmetrica
  4. Cracking degli hash
← Torna a Ethical Hacking Academy