Best practice per la gestione di token TOTP errati

2

Assumi un sistema 2FA con le password fornite dall'utente e i token TOTP a 6 cifre. Non è possibile testare un token TOTP senza prima aver autenticato la password, quindi si presume che chi presenta un token conosca la password. Ogni token viene generato per 30 secondi ed è valido anche nei 30 secondi precedenti e la finestra successiva di 30 secondi accanto al token "corrente".

È abbastanza comune vedere falsi allarmi perché il token ha impiegato un po 'troppo tempo per entrare, quindi i token non possono essere molto più lunghi per essere pratici.

Se un certo numero di input di token errati in una riga comporta l'invalidazione della password forzata, in base all'assunzione che la password potrebbe essere trapelata? (Potrebbe non essersi verificata la perdita. problema con il secondo fattore che alla fine andrà via.) Se i sistemi 2FA attualmente utilizzati sono ampiamente utilizzati, quali sono le soglie tipiche?

Sono a conoscenza di RFC 4226 che suggerisce un parametro throttling di 5. Non sono sicuro di cosa accada esattamente dopo il raggiungimento della soglia. Blocco dell'account? Password invalidata? Aspetta un po 'e permetti di riprovare?

    
posta Jirka Hanika 17.12.2016 - 16:25
fonte

1 risposta

2

Limita la quantità di tentativi che possono essere fatti entro i 30 secondi.

Quindi se hai un token che è valido per 30 secondi e ha 6 cifre (per esempio) e limiti la quantità di tentativi che possono essere fatti in 30 secondi per dire 5 (di nuovo come un esempio), allora il le probabilità di successo del bruting forzando il secondo fattore sono 0.0005000005000005%.

    
risposta data 17.12.2016 - 17:23
fonte

Leggi altre domande sui tag