Devo permettere agli utenti di scegliere le proprie domande segrete per la reimpostazione della password?

4

Sto costruendo un'applicazione web e sto effettivamente scrivendo un codice che consente agli utenti di scegliere la loro domanda segreta e la loro risposta usata per identificarli se dimenticano le loro password.

Sono un po 'confuso qui perché molti siti Web famosi offrono solo un elenco di domande limitate e predeterminate e non consentono agli utenti di digitare le proprie domande segrete. Tuttavia questo diminuisce la sicurezza, dal momento che gli hacker possono facilmente indovinare le risposte mediante ingegneria sociale, raccolta di informazioni ... (beh, la domanda segreta non è più segreta).

C'è qualche rischio per la sicurezza nel permettere alle persone di archiviare le proprie domande segrete e poi lasciarle selezionare tra altre domande casuali quando devono identificarsi.

Sono a conoscenza del rischio di SQL injection, quindi supponiamo che il mio codice sia sicuro e che i dati siano archiviati nel modo giusto.

    
posta storm 29.03.2016 - 09:44
fonte

3 risposte

7

Si fa un commento sul fatto che le domande di sicurezza predeterminate hanno più probabilità di essere indovinate dagli aggressori rispetto alle domande definite dall'utente. Ciò presuppone che l'utente medio progetterà una domanda migliore (ad esempio più segreta, meno probabile) rispetto alle persone che implementano il sistema. Questo non sembra essere vero per la maggior parte degli utenti.

In uno studio di laboratorio i soggetti hanno speso solo una media di 15 secondi per presentare la propria domanda di sicurezza. È pochissimo tempo per pensare alle caratteristiche di una cosa che fa una buona domanda di sicurezza. In un studio diverso i ricercatori hanno chiesto alle persone di creare domande sulla sicurezza che considerano fattori importanti durante la progettazione delle loro domande. Il 70% ha identificato la "memorabilità" come un fattore molto importante, mentre solo il 44% ha affermato che la "sicurezza" era molto importante. Quindi lasciare che gli utenti scrivano le proprie domande spesso si traducono in una sicurezza peggiore perché si concentrano su come renderle facili da rispondere, non resistenti alle supposizioni.

Sono stato in grado di osservare questo comportamento un po 'in uno studio che ho condotto alcuni anni fa su definito dall'utente coppie di domande / risposte di sicurezza trapelate durante diverse violazioni del database del sito Web. Ho scoperto che molte delle domande erano lo stesso tipo di cosa che ci si aspetterebbe di vedere nelle liste di domande di sicurezza predefinite: nome da nubile della madre, nome dell'animale domestico, luogo di nascita. Ma questo includeva domande sbagliate come "qual è il tuo colore preferito" in cui alcune risposte sono molto più probabili di altre e fare cinque ipotesi (blu, viola, verde, rosso, nero) corrisponderebbe correttamente al 75% delle risposte degli utenti.

Peggio ancora, alcuni utenti sceglierebbero di compromettere completamente la sicurezza della domanda attraverso la loro scelta. Alcuni utenti (il 15% su un sito, il 2% su un altro) farebbero corrispondere la risposta alla loro domanda. Un numero ridotto (0,2% e 1,8%) potrebbe persino elencare la password come domanda. In questi casi, chiunque sia in grado di visualizzare la domanda può quindi utilizzare tali informazioni per accedere come utente. Puoi implementare i controlli per controllare le domande mentre gli utenti li inviano e cercare di prevenire questo comportamento, ma è piuttosto difficile far rispettare un utente determinato a eluderlo.

Le domande di sicurezza non sono un ottimo metodo per autenticare gli utenti, ma consentire alle domande definite dall'utente tende ad essere una soluzione ancora peggiore. Se sei determinato a utilizzare domande di sicurezza, devono essere valutate e scelte dalle persone più qualificate per valutare i loro pro e contro.

    
risposta data 29.03.2016 - 18:35
fonte
12

Fondamentalmente, le persone sono spazzatura a venire con domande. Vengono fuori cose come "Tipo" segreto "" o "Il mio nome" - sono inutili al massimo, e attivamente dannose nel peggiore dei casi ("Password usuale" - la risposta alla domanda tende ad essere archiviata in testo normale. ..). Anche le domande predeterminate sono piuttosto negative - tendono a essere facilmente indovinate o facilmente dimenticate (ad esempio, se chiedi "Qual è stata la tua prima auto?", E il tuo sito è adatto ai diciottenni, è una questione di aspetto su Facebook e c'è quasi sicuramente una foto con loro ...).

È consigliabile inviare per e-mail un collegamento per la reimpostazione della password all'indirizzo e-mail memorizzato (evitando di esporre se l'indirizzo inserito esiste o meno), che è limitato nel tempo e monouso. Puoi quindi fare una domanda se vuoi, ma poiché hai già verificato di avere accesso all'indirizzo email associato all'account, è probabilmente meglio presumere di sapere tutto ciò che potrebbe essere comunemente inviato via email (indirizzo, data di nascita, partner nome, ecc.), quindi potrebbe non aggiungere molto, se non altro, in termini di sicurezza.

    
risposta data 29.03.2016 - 09:55
fonte
2

Oltre alle altre risposte, un motivo per evitare domande secondarie segrete scelte dall'utente è che potrebbero contenere contenuti "inappropriati".

Questo è generalmente solo un problema in cui la domanda e la risposta saranno visibili al personale amministrativo (ad esempio, dove la domanda e la risposta segrete saranno usate come parte di un processo di autenticazione del call center)

    
risposta data 29.03.2016 - 18:58
fonte

Leggi altre domande sui tag