Nessuna delle risposte esistenti copre la parte critica di questa domanda in modo soddisfacente: che dire dei sali?
Se sono stati pubblicati solo i valori hash della password, altri cracker non possono sapere:
-
Il valore di sale effettivo per password (presumibilmente casuale, per sorgente)
-
Come si salina il sale con la password nel codice.
Tutto quello che hanno è l'hash finale, risultante!
Ci sono molti modi la password e il sale possono essere combinati per formare l'hash:
sha256(pass + salt)
sha256(salt + pass)
sha256(sha256(pass) + sha256(salt))
sha256(pass + sha256(salt))
sha256(sha256(...(salt + pass + salt)...))
Ma se il sale è consigliato 8 caratteri di pura casualità ...
sha256("monkey1" + "w&yu2P2@")
sha256("w&yu2P2@" + "monkey1")
... questo significa che una "tipica" password di 7 o 8 caratteri diventa estremamente difficile a forza bruta, perché ha effettivamente 15 o più caratteri! Inoltre, per craccare la password gli hash che tu conosci sono salati, a meno che tu non abbia anche il sale, non hai altra scelta tranne la forza bruta!
Basato su ricerca che ho fatto usando il cracking della GPU , ho raggiunto 8213,6 M c / s utilizzando due schede ATI di fascia alta con brute force cracking MD5 hash delle password. Nel mio benchmarking ciò significava che potevo provare:
all 6 character password MD5s 47 seconds
all 7 character password MD5s 1 hour, 14 minutes
all 8 character password MD5s ~465 days
all 9 character password MD5s fuggedaboudit
Si noti che SHA-256 è il 13% della velocità di MD5 su GPU utilizzando Hashcat . Quindi moltiplica questi numeri di circa 8 per vedere quanto tempo sarebbe necessario.
Se i sali erano non conosciuti , significa che sei essenzialmente un bruto che forza l'equivalente di 12+ password di caratteri. Questo è molto al di là del dominio di qualsiasi potenza computazionale nota.
Ora se vuoi sostenere che ...
-
Anche i cracker originali hanno ottenuto i sali, ma hanno scelto di non pubblicarli.
-
Anche i cracker originali hanno il codice sorgente (o è open source) in modo che sappiano come vengono salate le password, ma hanno scelto di non pubblicare tali informazioni.
-
La falsa forma sta mentendo e le loro password non sono state salate o salate in modo errato in modo tale che i sali non hanno avuto alcun effetto.
... allora sì, è possibile crackare 200k di hash delle password di 400k in pochi giorni.