Molti provider stanno creando l'autenticazione OTP per l'accesso. Tuttavia ho notato che tutti gli OTP vocali e SMS che ho incontrato sono una serie di 6 cifre ... simile allo standard HOTP RFC emesso da Google Authenticator.
Vedo queste OTP a sei cifre quando:
- Autenticazione tramite una telefonata (Google e alcune banche ...)
- SMS al mio telefono (Facebook e Google ...)
- Verifica di un account tramite l'indirizzo email verificato
- Verifica del mio indirizzo di casa (Google Business, autenticazione strong IRS)
... Ovvero qualsiasi OTP che non utilizza un token o dispositivo OTP intelligente (YubiKey, Google Authenticator, Gemalto, ecc.)
Domanda
With regard to protecting the IdP that issues the OTP, what are the benefits and drawbacks of using a random number vs a seed like HOTP?
Ecco come potrebbero apparire alcuni scenari se la password one time è archiviata in un database. Uno scenario è basato sul seme in stile HOTP, l'altro scenario è basato sul numero casuale:
-
Se il database delle password (salate) viene rubato / estratto, è probabile che il seme HOTP sia archiviato nella stessa posizione. La sicurezza del datacenter in questo scenario si basa esclusivamente sulla protezione del database e dell'amplificazione; Seme HOTP.
L'autore dell'attacco ha il seme HOTP fino a quando non viene resettato quel seme, che probabilmente non è mai.
-
Al contrario, se il numero viene generato da random () e scritto nel database, non vi è alcun seed da compromettere. L'unico modo in cui può essere sfruttato è se l'utente malintenzionato avesse accesso in lettura in tempo reale al database.
From that quick outline it appears that seeded OTP (like HOTP) should not be used in these scenarios (voice, and SMS).
Is this a correct conclusion?