Il nome utente incluso in una password lo rende meno sicuro?

2

Numerosi moduli di registrazione ti impediscono di scegliere una password che includa il tuo nome utente. È una ragionevole limitazione dal punto di vista della sicurezza? Posso vedere che se il tuo nome utente è "foobar" e password "foobar1" è facile da indovinare, ma non dovrebbe essere permesso se la password è abbastanza strong?

n)_h322">L2=Q2*foobar è davvero meno sicuro del solo n)_h322">L2=Q2* ?

    
posta JJJ 02.11.2013 - 15:15
fonte

7 risposte

5

In una parola, no . Ma non è quello che succede di solito.

Qualunque elemento aggiunto a una password lo rende più sicuro, o nessun cambiamento. Ma dato che accodare / anteporre il tuo nome utente è così comune, tende a ricadere nella categoria nessuna modifica in molti casi d'uso, il che rende la verifica della forza delle password molto difficile.

Ad esempio:
Username: JonathanParr27
Password: JonathanParr27!

Qui, la password è semplicemente il nome utente con ! aggiunto. La password contiene una maiuscola, una minuscola, una cifra e una punteggiatura, oltre a 15 caratteri. Con le metriche tipiche, dovrebbe essere una buona password. Ma un utente malintenzionato proverà ad aggiungere numeri o punteggiatura al nome utente sui tentativi di forza bruta, quindi ora questa lunga e complessa password può essere ridotta a username + ! , che è facile e veloce da indovinare.

Pertanto, la maggior parte dei posti con requisiti di password sicuri dirà semplicemente, no, se usi il tuo nome nella tua password, non va bene . Ciò semplifica la verifica della sicurezza della password e pone fine alla stupida pratica di utilizzare il tuo nome utente come base per la tua password.

    
risposta data 02.11.2013 - 20:22
fonte
2

Potrebbe avere senso contare il numero di caratteri nella password che non sembrano essere parti riconoscibili del profilo dell'utente. Per l'utente "gere", non dovrebbe esserci un problema con la password "cabinet triggered frederickson", anche se contiene "gere", poiché contiene anche "cabinet trig" e "d frederickson". Per l'utente "freddy932", tuttavia, una password "freddy!" contenere qualcosa di significato diverso da un punto esclamativo.

    
risposta data 02.02.2014 - 22:55
fonte
2

TL; DR Le politiche di password non sono fatte per le persone che usano generatori casuali per generare password con 96 bit di entropia. Sono fatti per la stragrande maggioranza delle persone, ovvero spettatori lolcat.

L'entropia di una password deriva da come è stata generata la password piuttosto che i caratteri che contiene o non contiene. Ad esempio, la password generata in modo casuale kztc0!#F2mZq ha 79 bit di entropia. Se un utente malintenzionato sa che desideri aggiungere il tuo utente alla fine della tua password, kztc0!#F2mZqfoobar ha esattamente la stessa entropia di kztc0!#F2mZq , cioè quest'ultimo è sicuro come il precedente.

Ora, ecco la parte interessante. Se l'attaccante sospetta di aver aggiunto il tuo nome utente alla fine della tua password, allora kztc0!#F2mZqfoobar ha, in modo non intuitivo, solo un altro bit di entropia rispetto a kztc0!#F2mZq . Se l'utente malintenzionato sa di avere il tuo nome utente nella tua password ma non conosce la posizione esatta, allora kztc0!#F2mZqfoobar ha altri 3 bit di entropia.

Ora, torna alla realtà . In pratica, la maggior parte degli utenti non genera password casuali e preferisce utilizzare password come mylovelyann1982 o lolpassword999 . Di solito scelgono password tra 6-10 caratteri. Quindi se 4-5 di quei caratteri nella password originariamente bassa entropia sono il nome utente, ciò renderebbe la password ancora più debole. Queste password sono indirizzate da tali criteri di password.

    
risposta data 02.11.2013 - 17:57
fonte
1

Se includi il nome utente nella password, rendi più semplice l'attacco a forza bruta, dato che l'hacker conosce già alcuni caratteri sulla password. Riduce significativamente il tempo di indovinare. Nel caso di "foobar1" come hai detto, è certamente facile per l'attaccante indovinare.

In caso di n)_h322">L2=Q2*foobar , la forza della password è sicuramente inferiore a quella della password che ha lo stesso numero di caratteri ma non contiene il nome utente.

Ma è tutto parte della teoria, in pratica gli utenti non mantengono password difficili da indovinare o conservano password facili da ricordare. A causa della mancanza di sufficiente casualità da rendere difficile indovinare, i siti Web consigliano di non includere nomi utente nelle password.

Is n)_h322">L2=Q2*foobar really less secure than just n)_h322">L2=Q2*?

Supponendo che l'utente malintenzionato sappia che l'utente sta utilizzando il nome utente nella password, quindi per ogni password, l'utente malintenzionato deve provarlo con una combinazione di nome utente. Ad esempio, l'autore dell'attacco deve provare foobarn)_h322">L2=Q2* , n)_h322"foobar>L2=Q2* ecc. Quindi n)_h322">L2=Q2*foobar dovrebbe essere un po 'più sicuro di appena n)_h322">L2=Q2*

    
risposta data 02.11.2013 - 16:19
fonte
1

Come è stato sottolineato da altri, l'aggiunta di caratteri "noti" extra non rende la password meno sicura, poiché l'entropia è una misura del numero di altri valori che la password avrebbe potuto assumere e un'appendice deterministica sistematica dei caratteri non cambia quel numero.

Tuttavia, c'è un feedback. La password è scelta da un essere umano e sarà digitata da un essere umano, ed è vincolata da tre tipi di regole:

  • L'utente dovrà ricordare la password.
  • L'utente dovrà digitare la password (spesso).
  • Normalmente il criterio password impone una dimensione minima.

La politica delle "dimensioni minime" è un modo per impedire agli utenti di utilizzare password di 3 lettere o giù di lì. In effetti, gli utenti tendono a massimizzare la loro funzione di utilità (come dicono gli economisti), cioè useranno password che semplificano la loro vita. Una password molto corta è facile da scrivere e facile da ricordare. Ma questo spesso porta a password che sono facili da decifrare, quindi una politica di dimensioni minime (spesso 8 caratteri). In quel contesto, l'aggiunta del nome utente ha due effetti negativi:

  • Poiché l'utente preferisce le password brevi quando deve scriverle, questo inciterà l'utente a ridurre la quantità di "caratteri casuali" nella sua password.
  • Il criterio "dimensione minima" viene ignorato.

In effetti, se l'utente ha un nome "foobar" e deve rispettare una politica di "almeno 8 caratteri", proverà ad utilizzare una password come "foobar42", che non è affatto sicura ... poiché la sua lunghezza effettiva è quindi 2 caratteri, non 8.

La linea di fondo è che mentre si inserisce o si aggiunge il nome utente nella password non si riduce la sicurezza quando tutte le altre cose rimangono uguali , le altre cose tendono a essere modificato allo stesso tempo. In particolare, una politica di "dimensione minima" dovrebbe essere modificata in: "almeno n caratteri escludendo una copia del nome utente, se applicabile ". Vuoi che "foobar42" sia misurato, per questa politica, come password di lunghezza 2, non 8.

Questo illustra anche la creatività degli utenti umani. Cercheranno di aggirare le vostre politiche se queste politiche renderanno la loro vita più difficile. Per ottenere una maggiore sicurezza, è necessario ottenere la cooperazione dell'utente, che implica molta pedagogia e strumenti di supporto (in particolare, è necessario fornire un generatore di password non obbligatorio, per gli utenti che desiderano genera una buona password - alcuni la useranno)

    
risposta data 03.11.2013 - 15:45
fonte
0

Se non è utile , non farlo !! Come potrebbe diventare nocivo .

Ok, aggiungendo il tuo nome utente a password strong già deciso sembra essere innocente. Ma:

  • Se qualcuno sta cercando di muovere il dito, più chiavi si toccano, maggiori sono le probabilità di interpretare correttamente il suono, il movimento e il tempo tra un colpo e l'altro.

  • L'aggiunta di caratteri inutili ** migliorerà la possibilità di colpire una chiave errata, obbligandoti a ridigitare l'intera password. Dare un'altra possibilità per un migliore riconoscimento dei movimenti.

** Ho detto inutile perché aggiungendo il tuo nome utente aggiungi al massimo 1 bit di entropia.

    
risposta data 03.11.2013 - 16:49
fonte
0

Many registration forms prevent you from choosing a password ...

Sfortunatamente, molti moduli di registrazione non hanno idea di come distinguere il bene dalle password sbagliate e creano restrizioni quasi arbitrarie, incluse le veramente ridicole, come la lunghezza massima della password, il divieto di usare caratteri speciali, ecc.

Le password funzionano in termini di entropia , dove la vera entropia può essere osservata solo conoscendo cosa è stato il processo di pensiero durante la sua generazione (ecco perché le forme non possono semplicemente misurare entropia e dire all'utente di ottenere un'entropia più alta). In sostanza, se un utente malintenzionato conosce il processo di pensiero e verifica le password casuali che utilizzano lo stesso processo, entropy ci dice quanto tempo ci vuole prima che l'utente malintenzionato prenda la password corrispondente.

Ad esempio, se ho una determinata password e decido di aggiungere un numero, questo aggiunge un singolo carattere e moltiplica lo spazio della password per 10 ('pwd' diventa pwd0, pwd1, pwd2, ...). D'altra parte, se ho una determinata password e decido di aggiungere il mio nome utente o di non aggiungerlo, questo aggiunge diversi caratteri e moltiplica lo spazio della password per 2, se il nome utente è noto all'attaccante. Se uso il nome utente come prefisso, come postfix o per niente, questo moltiplica lo spazio della password per 3, che è ancora molto inferiore all'aggiunta di una singola cifra casuale.

Quindi rendere la tua username parte della password rende una password più strong di quella che non lo è, ma una (molto) più debole password piuttosto che aggiungere praticamente altro che il tuo nome utente.

    
risposta data 29.05.2016 - 23:42
fonte

Leggi altre domande sui tag