Le regole sulla complessità della password sono controproducenti?

30

Nel creare un login per questo sito ho scelto una password non divulgativa che sarebbe estremamente difficile da indovinare, ma facile da ricordare.

Mi è stato detto che non rispondeva alle regole di complessità.

Dopo diverse iterazioni di questo, per la frustrazione e solo per il diavolo ho provato 'Password1', che è stato accettato.

Solleva la domanda di quante persone non informatiche fanno allo stesso modo di fronte a questa situazione? Golf1? Mercedes1? Metallica1? Indovinato se conosci il ragazzo? Sì.

Al lavoro vengono rilasciate le password anziché consentire agli utenti di impostarle. Usiamo parole senza senso. Ad esempio, artifubulista. C'è un software per generare tali parole. Queste password sono sorprendentemente facili da ricordare ma, presumibilmente, molto difficili da usare per la forza bruta. Sfortunatamente, le regole di complessità delle password predefinite sui server Microsoft impediscono l'utilizzo di questa opzione semplice ma sicura. A meno che non si cambi la politica.

Pensieri su questo benvenuto.

    
posta IanR 07.03.2013 - 23:45
fonte

8 risposte

37

Regole di complessità della password sono controproducenti - per la maggior parte.

Regole sulla complessità della password:

  1. rendere gli utenti arrabbiati e quindi non collaborativi e probabilmente non imporre regole di protezione della password che solo loro possono applicare;
  2. inciti l'utente a scegliere soluzioni alternative per superare le regole della password
  3. sono spesso grossolanamente incomplete e non filtrano alcune password classiche o che presto diventeranno classiche e che gli utenti trovano come soluzioni alternative, vedere il punto 2 sopra. Ad esempio "Password1".

L'unica regola della "ragionevole" complessità della password che ho riscontrato è una lunghezza minima della password. Richiedere alle password di avere almeno 8 caratteri non è un disagio per gli utenti, è comprensibile ed evita le password che sono necessariamente deboli poiché sono nel raggio delle ricerche più stupide.

    
risposta data 07.03.2013 - 23:58
fonte
13

Da un lato, le regole sulla complessità non sono probabilmente buone. D'altra parte, le tue "parole senza senso" potrebbero non essere complesse come pensi.

Non c'è "presumibilmente" sulla facilità della forza bruta: questo può essere misurato. Per un determinato attaccante, il costo di un attacco a forza bruta è il numero medio di tentativi prima di trovare una password. Mentre non conosci il tuo aggressore, puoi presumere che sia intelligente e costruirà il suo attacco attorno ai tuoi metodi di scelta della password. (Sono gli attaccanti più intelligenti di cui hai più bisogno difendere comunque.) Quello che l'attaccante non saprà sicuramente è la parte che scegli a caso per ogni password. La quantità di casualità in una password è chiamata entropy ; è il numero di monete che vengono capovolte per determinare la password, espressa in bit. L'entropia misura anche il numero di tentativi di forza bruta che un aggressore intelligente richiederà: con n bit di entropia, ci sono 2 n possibili password e l'attaccante dovrà in media bisogno di provare la metà di questo, 2 n -1 .

Richiedere punteggiatura, cifre o lettere maiuscole è comune, ma non aiuta molto la sicurezza. Quasi tutti gli utenti che avrebbero scelto una parola del dizionario come password capitalizza la prima lettera e aggiunge un 1 alla fine. Le persone che decifrano le password non sono stupide: includono questa e altre variazioni dei loro cracking dizionari. Tutto sommato, questo requisito può aggiungere uno o due bit di entropia nella pratica. Ci sono modi migliori per rendere le password memorabili con più entropia. Questo è illustrato in xkcd 936 e discusso in questo sito in XKCD # 936: password complessa breve o passphrase lunga del dizionario?

Invece di presumere la forza del tuo generatore di parole senza senso, dovresti misurarlo. Scopri come genera password e, più precisamente, qual è il numero totale di password possibili. Non possiamo dire da un singolo esempio. Se il generatore alterna 5 vocali casuali (presumibilmente a , e , i , o , u ) con 20 gruppi consonanti casuali appropriati ( b , f , l , rt , st , ...), che rende (5 * 20) 5 = 10 10 ≈ 2 33 . Supponendo che le tue password siano adeguatamente protette , è sufficiente per gli attacchi online e ok per offline attacchi. (Se non si utilizza un hash sufficientemente lento, 33 bit sono noccioline.) Se il generatore di password combina frammenti di parole da un dizionario, l'entropia potrebbe essere molto inferiore.

Se non si è nella posizione di sollevare le regole di complessità della password, inviare le password conformi. Fai degli studi per vedere se riescono a ricordare una lettera maiuscola e una cifra per password; se non possono, capitalizza sempre la prima lettera e metti un trailing 1.

    
risposta data 08.03.2013 - 00:13
fonte
10

Alcune regole di complessità sono controproducenti.

Esempi di regole di complessità meno produttiva:

  • Deve avere una lunghezza compresa tra 16 e 17 caratteri (una lunghezza troppo specifica)
  • Deve contenere almeno 3 dei seguenti - $% ^ & (troppo poco speciale personaggi tra cui scegliere)
  • Deve contenere una lettera maiuscola, una lettera minuscola, nessun carattere sequenziale o ripetuto, un numero, e un segno di punteggiatura (troppo specifico)

Esempi di "buone" regole di complessità:

  • Deve essere più lungo di X caratteri (incoraggia password più lunghe)
  • Deve contenere almeno un numero (incoraggia alcuni, ma non eccessiva complessità)

La soluzione migliore per me è stata l'utilizzo di un gestore di password, che consente di rispettare facilmente anche le regole più ridicole, ma non dimenticherò mai nulla.

Questo è un chiaro caso di mettere tutte le uova in un cesto, e poi guardare il cesto come un falco tramite CCTV e circondare il cesto con le tigri e le mine antiuomo.

    
risposta data 08.03.2013 - 03:33
fonte
5

È stupidamente semplice aggirare la maggior parte delle serie di regole di complessità delle password valutabili in modo indipendente; lunghezza minima, requisiti del caso, requisiti del carattere non alpha. "Password1", a meno che il tuo nome non sia Joe Password, supererà la maggior parte dei sistemi di regole perché ha una lunghezza di almeno 8 caratteri, con una maiuscola e un numero. È anche la prima cosa che ogni crackbot proverà.

La regola cardinale di qualsiasi requisito di complessità della password è, più difficile è l'utilizzo del sistema, meno persone lo useranno . Ciò va ben oltre le regole di complessità della password, ma dal momento che la schermata di accesso (e la schermata di registrazione dell'utente che di solito si collega da lì) sono la prima vera interazione dell'utente con il proprio sistema, tanto più spiacevole è, meno gli utenti vorranno per affrontarlo e con te. Questo è particolarmente importante se stai cercando di "vendere" il tuo sistema agli utenti come un prodotto che non sapevano di aver bisogno, o se ci sono molte alternative sul mercato (come un forum online). Gli utenti in quella situazione diranno molto rapidamente "Fanculo, sono fuori gioco" e difficilmente riuscirai a riprenderli tutti.

Seguono naturalmente alcune regole aggiuntive. Uno è che tu informa l'utente in modo chiaro e semplice delle regole che hai in atto, prima di digitare qualsiasi cosa . Non è un problema di sicurezza per le regole di complessità che imponi di essere di dominio pubblico, a meno che quelle regole in realtà riducano possibile entropia di password accettabili (che regole come una lunghezza massima possono fare) e il tuo utente sarà molto meno frustrato nel tuo sistema di quanto sarebbe se dovesse imparare le regole con il reverse engineering.

Un'altra regola è che non deviare troppo dalle regole che gli utenti si aspettano . La maggior parte degli utenti è abbastanza intelligente da capire che la complessità minima è per il loro bene, e sanno anche che le barre più siti e set di applicazioni hanno un'altezza simile (minimo 6-8 caratteri, una lettera maiuscola e un numero, non possono contenere di alcune parole ovvie come "password"). Applicare password incredibilmente lunghe e complicate in eccesso rispetto allo standard implicito (minimo 20 caratteri, almeno due gruppi di almeno 4 numeri ciascuno e almeno 5 simboli) sta solo andando a far incazzare le persone, anche se le dici in anticipo.

L'ultima meta-regola che affermerò è, non imporre una regola fine a se stessa . Non usare mai una regola solo perché hai visto un altro sito o applicazione farlo, o anche solo perché è la migliore pratica. Ci sono delle ragioni alla base delle best practice, ma dovresti conoscere e comprendere tali motivi, incluso il motivo per cui potrebbero non essere applicabili nella tua situazione, prima che Scotch registrasse una politica di sicurezza.

Il set di regole che di solito mi piace è:

  • Lunghezza minima di 8 caratteri.
  • Simboli maiuscoli, numeri o .
  • Non può essere composto solo da una parola del dizionario.
  • Non può contenere alcuna parte del tuo nome, nome utente o data di nascita (se conosco queste cose)
  • Non si può avere una "password vietata" uguale o superiore al 50% della password. Le password vietate includono quelle che sono mai apparse nell'elenco 25 di SplashData, inclusa la maggior parte dei grandi come "Password", "letmein", "12345678" ecc., Nonché qualsiasi stringa che sia "interessante" nella sicurezza IT ("correcthorsebatterystaple") , "orpheanbeholderscrydoubt") e qualsiasi password precedentemente utilizzata e nota per essere stata compromessa. L'elenco completo sarebbe relativamente breve e facilmente visualizzabile dagli utenti tramite un link dall'elenco delle regole.
risposta data 23.07.2014 - 22:03
fonte
4

Prova a crackare la password di esempio. Guarda quanto tempo ci vuole. Scommetto che sarai sorpreso.

Incoraggio l'uso di strumenti di gestione password (LastPass, ecc.), password lunghe e complesse e password WRITING DOWN (con le qualifiche descritte di seguito).

Sì, alle persone è stato detto per anni di non scrivere mai le proprie password. Ma il modello della minaccia è cambiato. Quando è nato quel consiglio (negli anni '70) la minaccia era che la gente prendesse il post-it da sotto la tastiera. Ora la più grande minaccia sta rompendo gli hash. Quindi ora la mia raccomandazione è di renderla complessa, non preoccuparti di ricordarla, di scriverla e di memorizzare la password scritta in un luogo sicuro, ad esempio accanto agli altri piccoli fogli verdi di carta che siamo tutti così bravi a proteggere.

Se annoti la tua password e la conservi nel tuo portafoglio con i tuoi soldi e non scrivi il tuo nome utente o un nome host su di esso è molto meno probabile che qualcuno possa fare qualcosa di male con esso che se non scrivi giù ma scegli una password semplicistica. Hash cracking è la minaccia molto più grande di qualcuno che ruba il tuo portafoglio e usa la tua password.

E ovviamente non usare mai la stessa password due volte o su siti diversi ecc.

    
risposta data 08.03.2013 - 00:36
fonte
4

Sì. La mentalità del 2018 è che le regole sulla complessità della password sono davvero controproducenti. Le recenti linee guida NIST di giugno 2017 (SP 800-63B) riflettono questo chiaramente - punti salienti :

  • 8 o più caratteri.
  • Durante l'elaborazione delle richieste per stabilire e modificare i segreti memorizzati, i verificatori DEVONO confrontare i potenziali segreti con un elenco che contiene valori noti per essere comunemente utilizzati, previsti o compromessi.
  • I verificatori NON DEVONO imporre altre regole di composizione (ad es. richiedere miscele di tipi di caratteri diversi o vietare caratteri ripetuti consecutivamente) per segreti memorizzati.
  • I verificatori NON DEVONO richiedere che i segreti memorizzati vengano modificati arbitrariamente (ad esempio, periodicamente).

Se è necessaria una maggiore sicurezza, utilizza l'autenticazione a più fattori.

Le parole insensate sono una buona idea presumendo che le sue regole di composizione siano sufficientemente casuali. Sarei diffidente affidandomi esclusivamente a un generatore poiché il suo algoritmo potrebbe essere utilizzato per aiutare a rompere la tua password - aumentandola con qualcosa di breve ma solo significativo per te sarebbe un lungo cammino.

    
risposta data 11.07.2018 - 22:59
fonte
1

Per me è diventato così complicato creare e gestire password, ho ricercato e testato circa 6-7 gestori di password e mi sono sistemato su un sistema facile da usare, backup, sincronizzazione, ecc. e sono così felice che finalmente ha preso il grande passo.

ujrDm-e(5Gi9wSN8N.[(

È una tipica password che viene generata, quindi tutto ciò che devo fare è copiare / incollare come richiesto. Una grande frase segreta strong è tutto ciò di cui ho bisogno di ricordare. Questo totalmente semplificato e ha fortificato l'utilizzo della mia password.

    
risposta data 12.03.2016 - 11:23
fonte
-4

Penso che una risposta migliore rispetto alle semplici regole sulla complessità della password sia quella di avere una (o due) semplici regole per la password e insegnare ai tuoi paradigmi di creazione di password per l'organizzazione. Ecco ed esempio che uso personalmente.

Le regole: 1. Le password devono essere di 12 caratteri o più. 2. Le password devono contenere alfa, numero e caratteri speciali.

Paradigm 1: 1. Scegli un detto o una poesia preferita. 2. Prendi una lettera coerente in ogni parola (1a, 2a, ultima ...) della poesia come parte della tua password. 3. Applica la tua scelta di sostituzione dell'alfabeto (potrebbe essere hacket leet e- > 3, a- > @ ...) ma creane uno se non ce l'hai. 4. Se sono necessarie password diverse per sistemi diversi, anteporre o postare un acronimo per il nome del sistema digitato all'indietro (bank - > knab) alla password.

Per un'organizzazione, puoi creare diversi paradigmi, se vuoi, o paradigmi con diversi livelli di criteri di sicurezza.

Naturalmente i paradigmi potrebbero richiedere una spiegazione un po 'migliore, ma in generale il vantaggio di questo modo è:

  1. Le "regole" sono semplici e possono essere rapidamente convalidate nelle interfacce utente e in altri componenti di sistema.
  2. La tua comunità di utenti tende ad essere più conforme alla creazione di password più robuste e difficili da decifrare, perché ora hanno gli strumenti mentali per farlo.
  3. Il recupero delle password da parte dell'utente è più semplice e meno rischioso (annotare la password effettiva, confrontando i criteri di paradigma).
  4. Gli utenti possono creare password specifiche per il sistema che sono abbastanza difficili, ma che possono ancora essere ricordate.
risposta data 08.03.2013 - 15:30
fonte

Leggi altre domande sui tag