confronto tra algoritmi di hashing delle password - idee per il PoC?

5

OK, ho appena iniziato a lavorare per una società di consulenza sulla sicurezza e raccomandiamo SHA 256 (con sale) per l'hashing della password perché MD5 è troppo debole. Ho letto alcune risposte brillanti (la lista è troppo lunga !!!) su sec.SE riguardo l'hashing delle password negli ultimi mesi e sarebbe un peccato non provare e dimostrare ai miei colleghi e agli anziani che MD5 e SHA non sono adatto per l'hashing della password.

Ho pensato che sarebbe stato utile creare un PoC (database demo contenente hash di password con MD5, SHA 256 e bcrypt e tentare di misurare il tempo impiegato per generare l'hash) accompagnato da alcuni riferimenti standard. I punti che Sono disposto a fare sono:

  1. L'utilizzo di SHA 256 su MD5 per l'hashing della password non migliora la sicurezza. Un algoritmo di hashing della password (bcrypt, PBKDF2) sarebbe una scelta molto migliore per l'archiviazione delle password, ovviamente con sali unici.
  2. Alcuni riferimenti standard per supportare queste visualizzazioni. I riferimenti sono importanti per supportare le viste.

P.S. Ho esperienza di programmazione, ma sono un principiante quando si tratta di cracking delle password basato su hardware. Non è una domanda "dammi il codice"; Sto solo chiedendo idee e suggerimenti per rendere questo un PoC migliore.

    
posta Shurmajee 12.10.2013 - 20:51
fonte

3 risposte

2

Se i tuoi colleghi non sono sufficientemente interessati da esaurienti spiegazioni o da benchmark pubblicati , e hanno davvero bisogno di un timbro di approvazione da parte di "effettivi ricercatori" (qualunque cosa ciò significhi) o, peggio ancora, di alcuni ente governativo, quindi mostrali:

Il punto delicato, ovviamente, è renderli consapevoli di ciò che dovrebbero già sapere, senza farli sentire troppo, beh, dovrebbero davvero saperlo, essendo una società di consulenza sulla sicurezza e tutto il resto. Esponendo le persone alla propria incompetenza può occasionalmente innescare un riflesso salutare di umiltà e volontà di apprendimento; tuttavia, spesso induce reazioni aggressive che sono controproducenti, vale a dire che non smetteranno di usare un hash password scadente, ma ti licenzieranno per la tua impudenza.

    
risposta data 15.06.2014 - 22:49
fonte
3

Hai detto di lavorare in una compagnia di sicurezza, ma allo stesso tempo, dici che non sono convinti che SHA-256 non sia adatto alle password. Quindi, non sono sicuro di come siano i tuoi colleghi a conoscenza, ma aggiungerei alcuni elementi grafici che spiegano come funziona l'hashing per SHA-256 e come funziona per lo scrypt. Forse un buon punto di partenza è l'episodio Security Now relativo ai problemi di memoria , che spiega come funziona lo scrub e perché è meglio per le password.

Nota a margine: qualche tempo fa, ho fatto una presentazione simile ad alcuni sviluppatori di un'azienda. Ho preso le password dai loro utenti e ho eseguito hashcat contro di loro, mentre spiegavo che SHA-256 non era davvero adatto e che lo scrypt sarebbe stato un'opzione migliore. Mentre stavo parlando, le password scorrevano sullo sfondo. Basti dire che, alla fine della presentazione di mezz'ora, erano abbastanza convinti che SHA-256 non fosse abbastanza buono. A volte, una dimostrazione pratica è meglio di PowerPoint con numeri; -)

    
risposta data 14.10.2013 - 14:41
fonte
3

Fai una lista di 1.000 password: alcune banali (password, cat), alcune basate su pattern (mY $ p455w0rd), alcune casuali (s% Xn3,0a9aN), e le hash in tre modi diversi: MD5 con sale, SHA -256 con sale e bcrypt.

Utilizza hashcat sui risultati.

    
risposta data 12.10.2013 - 21:30
fonte

Leggi altre domande sui tag