Best practice per l'URL di accesso automatico?

7

Un URL di accesso automatico è un meccanismo tramite il quale un utente esistente ma disconnesso del tuo sito Web o applicazione può fare clic su un collegamento con un token casuale e essere automaticamente riconosciuto e connesso al tuo sito web. Spesso questi meccanismi sono usati in altre mode come il reset della password.

Mi domando quali siano alcune misure di sicurezza "di difesa in profondità" che suggerisci quando costruisci un meccanismo di "accesso automatico" che riduce il rischio di compromissione dell'account utente.

C'è qualcosa che può essere fatto oltre le misure tipiche?

  • Token con una breve scadenza
  • Token che può essere utilizzato solo una volta
posta Alex Urcioli 06.03.2016 - 21:48
fonte

2 risposte

3

Oltre a garantire che un token sia monouso, ha una breve scadenza e che il token è sufficientemente casuale e lungo:

  • Suggerirei di limitare il numero di token validi esistenti in qualsiasi momento (preferibilmente a 1). In questo modo la tua esposizione a codici compromessi è limitata a un numero fisso.
  • Avere il codice nei parametri di una richiesta GET esporrà il codice nella maggior parte dei log HTTP (ad esempio la cronologia del browser). Questo è per lo più mitigato rendendo i codici monouso, ma idealmente si invierà loro solo il collegamento di accesso senza il codice incorporato e li farà copiare manualmente il codice dall'e-mail alla pagina di accesso.
risposta data 06.03.2016 - 22:33
fonte
0

Se possibile, scopri da dove proviene l'utente (geo-localizza i loro indirizzi IP). Se il token monouso viene utilizzato da una posizione insolita, non autentificarlo.

In questo modo, si può sperare di evitare compromissioni degli account dal dirottamento degli account e-mail o di MiTM delle e-mail (che sono in chiaro, ricorda!).

(Idealmente non dovresti implementare una funzione come questa, a causa dei rischi per la sicurezza!)

    
risposta data 06.03.2016 - 23:02
fonte

Leggi altre domande sui tag