Quanto è sicuro l'autenticazione a due fattori (TOTP)?

1

Se qualcuno riceve il mio telefono e salva i valori generati dal mio autenticatore, sarà in grado di trovare la chiave condivisa, che sarà in grado di generare autonomamente i codici?

Se sì, quanti codici dovrà generare per ottenere la mia chiave condivisa? (Approssimativamente, poiché può cambiare in base al suo algoritmo risolutivo)

Potresti voler notare che intendo l'algoritmo TOTP utilizzato con una chiave lunga 16 caratteri (lettere minuscole, numeri) qui.

    
posta Ave 03.05.2015 - 19:36
fonte

1 risposta

1

L'autenticazione si basa su quanto segue: ( fonte )

  • Qualcosa che conosci
  • Qualcosa che hai
  • Qualcosa che sei

Un buon motivo per utilizzare TOTP è aumentare la sicurezza utilizzando più fattori dall'elenco sopra. Ad esempio, se la tua password diventa nota a qualcun altro, sarà comunque necessario l'accesso al tuo dispositivo TOTP per l'autenticazione.

Tuttavia, ciò non significa che i dispositivi TOTP siano invulnerabili per attaccare.

RFC 6238 afferma che:

The keys MAY be stored in a tamper-resistant device and SHOULD be protected against unauthorized access and usage.

Questo significa che le implementazioni TOTP non sono richieste per proteggere il segreto condiviso da RFC compatibile. Tuttavia, potresti prendere in considerazione la ricerca di un'applicazione TOTP che richiede una password per decrittografare i segreti condivisi. Ciò fornisce una protezione aggiuntiva, ma se la sicurezza del telefono viene compromessa da un exploit o da un accesso fisico dannoso, gli attacchi di keylogger diventano possibili.

Hai anche chiesto quante chiavi un attacker avrebbe bisogno di vedere per scoprire il tuo segreto condiviso. Da RFC 4226 , Appendice A.4.3:

No matter what strategy the adversary uses, and even if it sees, and tries to exploit, the authenticators from authentication attempts of the user, its success probability will not be above that of the brute force attack -- this is true as long as the number of authentications it observes is not incredibly large.

Quindi, in generale, un attacco di forza bruta è il migliore che potrebbe accadere. Tuttavia, se l'avversario può generare i codici a piacere (e per qualche motivo non hanno già il segreto condiviso), questo non vale. Ulteriori informazioni su ciò che influenza questo attacco sono disponibili nella RFC.

    
risposta data 03.05.2015 - 22:28
fonte

Leggi altre domande sui tag