Non tutte le perdite di password sono uguali. La funzione di hash utilizzata dall'applicazione e la politica della password dell'applicazione dovrebbero dettare quali strumenti utilizzare per interrompere gli hash. Una buona risorsa su questo argomento è
Guarda indietro nel 2012 Password Hash Leaks famose - Wordlist, analisi e nuove tecniche di cracking . In breve, sono in grado di rompere la maggior parte degli hash delle password utilizzando un approccio misto.
Se l'applicazione non sta salendo le password, o il sale è molto piccolo allora un Rainbow Table è lo strumento di scelta. I tavoli Rainbow sono precalcolati e disponibili gratuitamente. Questo è il metodo più veloce per esaurire uno spazio-chiave (specialmente se si dispone di un array RAID 0!). Per questi motivi, una tabella arcobaleno è solitamente il primo metodo di cracking se ne può essere usato uno.
John the Ripper è in grado di lavorare con elenchi di parole e generare mutazioni "leet speak" sulle parole. Se una password è solo una parola di un dizionario o una dicitura di una parola, John the Ripper può rompere questo hash. A differenza delle tabelle arcobaleno, John the Ripper può accettare il sale come argomento, che non impedisce il cracking.
Se l'applicazione sta usando il key stretching con bcrypt o pbkdf2, quindi un FPGA e GPU sono quasi inutili . Nell'analisi hash del 2012 trapelata, le GPU sono state in grado di craccare circa il 48% delle password, questo principalmente perché bcrypt e pbkdf2 non sono comunemente usati.
... ma in pratica la quantità non è tutto. Non sono affatto d'accordo con Jeff Atwood su questo approccio "a bassa portata". L'account più prezioso è l'account amministrativo , spesso esiste solo un hash per la password che l'utente malintenzionato vuole interrompere e farà tutto il possibile per interrompere questo hash. Come tester di penetrazione, rompere un hash delle password amministrative è una grande scoperta in un report e un link eccellente in un attacco incatenato.