Perché i collegamenti di ripristino della password una volta sono più sicuri di una password?

9

Recentemente ho fatto domanda per un posto di lavoro in un'azienda che creava

security-critical solutions for military, aerospace, ...

Dopo essermi registrato sulla loro pagina web, ho ricevuto un'email con il mio nome utente e una password monouso in chiaro> . La mia prima reazione fu di saltare in orrore della loro incompetenza, specialmente dato che la sicurezza dovrebbe essere la loro competenza , ma dopo averci pensato un secondo, mi resi conto che sono un nuovo utente e che nulla è ancora in gioco. Ma in seguito vedo che la loro funzione di reimpostazione della password invia in realtà una password monouso in chiaro .

Questo mi ha fatto pensare, è davvero così brutto inviare una password monouso in testo semplice ? Soprattutto quando qualcuno che afferma di guadagnarsi da vivere in sicurezza lo fa?

Stavo leggendo questa risposta ad alta tensione che diceva che non dovresti mai inviare alcuna password tramite e-mail. Invece se il tuo utente dimentica la sua password, dovresti inviare loro un link per la reimpostazione della password one-time .

Ma qual è la differenza fondamentale tra una password singola e una singola?

Finora, non sono riuscito a trovarne. I due indizi più vicini che ho sono:

  1. La risposta in alta voce menziona che:

    Do all of this over SSL.

    Cioè, invia il collegamento one-time su SSL. Non capisco assolutamente questo punto. Come puoi inviare a qualcuno un link di ripristino una tantum (in email presumibilmente) su SSL?

  2. C'è stato un commento di @Anders sotto questa domanda che indica che un link scadrà, ma una password monouso non lo farà. Ma ancora una volta, non lo compro. Le password do scadono se le desideri.

Inoltre, se l'utente ha un nome utente diverso dal suo indirizzo email, una password monouso può essere più sicura di un link per la reimpostazione della password. Chiunque può intercettare il collegamento, accedere e rubare dati, ma se è solo l'utente che conosce il nome utente, solo lui può utilizzare la password monouso.

Sai come reagiscono le persone che si occupano di sicurezza delle informazioni quando sentono le parole password e testo semplice nella stessa frase, giusto? Se un link per la reimpostazione della password monouso è solo un nome utente + password monouso, questa pratica dovrebbe essere guardata dall'alto in basso ancora più , ho ragione?

Tutto sommato: L'invio di password monouso via e-mail in chiaro significa assoluta incompetenza?

    
posta Martin Drozdik 20.01.2017 - 02:21
fonte

3 risposte

1

Non so esattamente perché @Polynomial ha suggerito ciò che ha suggerito, ma ecco cosa penso della tua confusione.

is it really so bad to send a one-time password in plaintext?

Non ci credo. Affinché un utente malintenzionato possa abusarne, è necessario avere accesso alla propria casella di posta o, come si suol dire, al nome utente. Sebbene il nome utente potrebbe non essere sempre applicabile. Se ti viene inviato un link per la reimpostazione della password, anche in quel caso l'utente malintenzionato dovrà avere accesso alla tua posta.
Le aree in cui credo che il link di reimpostazione della password vince rispetto alle password una tantum è che quando si implementa una sola password, è necessario eseguire quanto segue:

  • Assicurati che la password venga cambiata immediatamente quando l'utente effettua il login. E se un utente e l'utente malintenzionato inseriscono entrambi il sito web contemporaneamente prima che la password venga ripristinata?
  • Limita / riduce il numero di richieste non valide che possono essere eseguite al ripristino della password utilizzando la password unica. Cosa succede se un utente malintenzionato tenta attacco bruteforce / dizionario sulla funzione di reimpostazione della password? Se hai un link per la reimpostazione della password, non dovrai preoccuparti di loro.

Does sending passwords over email in plaintext mean absolute incompetence?

No. È solo una filosofia diversa.

    
risposta data 20.01.2017 - 06:06
fonte
7

Questo potrebbe andar bene - dopo tutto un'e-mail di reimpostazione della password contiene una "password una tantum", anche se in realtà è una chiave segreta e basata su una lunga sequenza pseudo-casuale che è irrealizzabile alla forza bruta.

Inoltre, questo potrebbe anche significare che c'è un attacco Denial of Service contro un utente legittimo:

  1. L'attaccante accede al sito web, sa che [email protected] è un utente (ad esempio attraverso una vulnerabilità di enumerazione del nome utente).
  2. L'attaccante preme per ripristinare la password di Bob.
  3. Nuova password temporanea e sicura inviata a [email protected]
  4. Bob, senza l'accesso corrente alla sua email ora non può accedere al sistema.

I link per la reimpostazione della password non hanno questo difetto, per quanto minori possano essere per il sistema in questione.

Se vengono emesse password temporanee, sarebbe consigliabile generarne una con almeno 80 bit di entropia (la raccomandazione NIST corrente) e obbligare l'utente a modificarla immediatamente all'accesso, anche se "forza la navigazione" verso qualsiasi altro URL nella sezione autenticata del tuo sito web. Ad esempio, dovrebbe reindirizzarli alla schermata di modifica della password fino a quando non lo fanno, e dovrebbe anche assicurarsi di selezionare una password diversa.

L'altro problema che hai ora è che se l'utente non usa immediatamente la password temporanea. Hai una password in chiaro nella casella di posta dell'utente, che non è la posizione migliore per l'archiviazione della password. Potrebbe essere necessario scadere questa password in qualche modo, portando ad ulteriori complessità nella vostra applicazione. Avere collegamenti separati per la reimpostazione della password semplifica le cose, poiché è solo l'istanza di un collegamento stesso che scade, non la loro password principale.

In breve, è molto più semplice e sicuro avere un meccanismo di ripristino della password separato che non tocchi la password dell'utente fino a quando non hanno confermato che possono di fatto accedere alla casella postale associata all'account.

    
risposta data 20.01.2017 - 15:01
fonte
4

Una password monouso e un link di ripristino potrebbero essere implementati in modo tale che siano funzionalmente equivalenti. In pratica, tuttavia, una password monouso è probabilmente leggermente più sicura.

Considera il seguente link di ripristino:

https://www.example.com/reset/a93f51cd-ae20-46f8-9575-3d9bfa088e5e

Rispetto a una password una tantum di:

a93f51cd-ae20-46f8-9575-3d9bfa088e5e

Il flusso di lavoro tipico per il link di ripristino è:

  1. Fai clic sul link.
  2. Ti viene presentata una schermata per cambiare la password.
  3. Inserisci la tua nuova password, confermala, salva.

Il tipico flusso di lavoro per la password monouso è:

  1. Vai alla pagina di accesso.
  2. Inserisci il tuo nome utente e la tua password monouso.
  3. (Dietro le quinte la tua password monouso ora è invalidata.) Ti viene presentata una schermata per cambiare la tua password.
  4. Inserisci la tua nuova password, confermala, salva.

Il motivo per cui la password monouso è leggermente più sicura è, come hai sottolineato, con la password monouso che devi ancora conoscere il tuo nome utente, mentre in genere un link di ripristino non richiede di inserire il tuo nome utente. Inoltre, una volta inserita la password monouso, probabilmente verrà immediatamente invalidata e non potrà più essere riutilizzata, mentre un link di ripristino può essere cliccato più volte fino a quando non si invia la nuova password cambiamento.

Al fine di renderli funzionalmente equivalenti, dopo aver cliccato sul link di reset dovresti immediatamente scadere il collegamento, e anche chiedere all'utente di inserire il loro nome utente insieme alla loro nuova password. Si noti che uno svantaggio potenziale di scadere immediatamente del link di ripristino dopo il primo clic è che alcuni programmi di posta elettronica e antivirus seguiranno i collegamenti per verificare la presenza di contenuti dannosi e questo potrebbe far scadere il collegamento prima di avere la possibilità di fare clic. p>     

risposta data 20.01.2017 - 17:14
fonte

Leggi altre domande sui tag