Mantenere una cronologia delle password aumenta il rischio per l'utente? [duplicare]

2

È prassi comune in molti sistemi mantenere una cronologia delle password per diversi motivi (principalmente, impedire all'utente di riutilizzarli).

Le risposte come questo suggeriscono che di solito sono mantenute nello stesso formato (che ha senso, per controllarlo facilmente sul cambio della password).

Le risposte come questo suggeriscono che sono spesso conservate nel stesso database sistema.

Quindi questo mi fa meravigliare: questo non fa una breccia nel database molto più grave, dal momento che un utente malintenzionato avrebbe più password associate a quell'utente / email che possono provare ad accedere ad altri sistemi (dal momento che molto di persone hanno 3-4 password che riutilizzano)?

In alternativa, se disponi di un algoritmo mentale per le password, potrebbe essere dedotto (non sono sicuro se qualcuno vorrebbe disturbarlo, ma per un account di alto profilo, forse) dai molteplici esempi.

Esiste effettivamente un rischio aggiuntivo? Questo rischio è un problema? In tal caso, esistono le migliori pratiche per attenuarlo?

    
posta xDaizu 05.04.2017 - 09:39
fonte

2 risposte

2

La risposta alla tua domanda alla fine si ridurrà a ciò che consideri più importante. Per molte organizzazioni, garantire che le password vengano cambiate frequentemente è la priorità. Per gli altri, è importante assicurarsi che la password sia unica . Molti utenti immetteranno la loro password più comune per la prima volta in cui creeranno il loro account, rendendo così 'uso di una password univoca' sistema inutile.

Ora, se esegui l'hashing sicuro delle tue password e le memorizzi in modo sicuro, potresti voler passare al controllo successivo - è importante impedire attacchi di bruteforce di successo? Se sei stato violato e il tuo database rubato, forse è importante garantire che i tuoi clienti non riutilizzino la stessa password: in tal caso, potresti voler archiviare vecchie password per un certo periodo prima di consentire un riutilizzo.

Si tratta fondamentalmente di uno scenario rischio vs premio: da un lato, è possibile garantire una maggiore sicurezza, ma è più pericoloso in caso di violazione del DB, mentre d'altro canto se non si memorizzano vecchie password, si riduce la perdita su una breccia.

Chiediti: Che cosa è più importante per te?

    
risposta data 05.04.2017 - 10:01
fonte
2

Se il sistema A impedisce alle persone di riutilizzare le password (e quindi conserva una cronologia delle password), fa bene alla sicurezza del sistema A. Garantisce che le password vengano regolarmente cambiate.

Se ci vuole un anno per decifrare la password media, ma le password vengono cambiate ogni sei anni, un utente malintenzionato non può ottenere molto valore da una violazione dei dati. Certo, non devi essere un genio per indovinare cosa viene dopo password1 e password2 , ma è comunque meglio che mantenere password .

Hai ragione a sottolineare che l'archiviazione di password multiple con hash dà a un utente malintenzionato più valore se desidera attaccare il sistema B, dove gli utenti potrebbero aver utilizzato le password dal sistema A. Ma se la tua preoccupazione principale è proteggere le risorse del sistema A e non proteggendo i tuoi utenti in generale, ciò non conta molto.

Quindi direi che si tratta di ciò che vuoi proteggere. Se ti interessa solo il tuo sistema, cerca una cronologia delle password. Se ti interessi degli utenti che stanno riutilizzando le password che sono vulnerabili su altri sistemi, allora non farlo. Quello che dovrebbe o non dovrebbe preoccuparsi è intrinsecamente soggettivo, quindi non si può rispondere qui.

(C'è anche un argomento per cui forzare le reimpostazioni delle password fa sì che gli utenti scelgano password peggiori, e quindi non dovrebbe essere fatto affatto. Lascerò quell'aspetto da questa risposta dato che non penso che sia quello che la domanda era circa.)

    
risposta data 05.04.2017 - 11:46
fonte

Leggi altre domande sui tag