Domanda:
Quanto è affidabile un controllo della sicurezza della password?
iijj
2011-03-24 14:13:32 UTC
view on stackexchange narkive permalink

Ho testato lo strumento di Microsoft disponibile qui che verifica la sicurezza delle password e le valuta. Per una password come "stasera pranzerò", lo strumento la valuta come "MIGLIORE" e per una password come "th1 $ .v4l" la classifica come "Media".

Mi chiedo quanto sia davvero importante la lunghezza della password. In questo caso la prima password è migliore in base al loro strumento ma è davvero migliore? Si basa su parole del dizionario e non ha combinazioni di numeri e altri caratteri oltre agli spazi, e sembra molto facile da decifrare (senza considerare la forza bruta).

Quello strumento dà la precedenza alla lunghezza anziché alla forza effettiva?

Mi chiedo se qualcuno abbia costruito un brute forcer basato su un modello Markov per le passphrase.
Sono già disponibili tabelle arcobaleno per NTLM e MD5 per decifrare qualsiasi password lunga fino a 8 caratteri utilizzando tutti i caratteri sulla tastiera. Il set per "caratteri alfabetici inferiori, numeri e simboli" è grande solo 400 GB, quello per lo spazio completo è di circa 600 GB.
[XKCD pertinente] (http://xkcd.com/936/).
@StephenPaulger, Ti interessa approfondire come funziona un "brute forcer basato su un modello markov"?
Le catene @Pacerier Markov possono memorizzare la frequenza delle parole utilizzate insieme, quindi se inizi a indovinare la frase della password con una parola, potresti provare prima le parole associate più probabili. Questo è il modo più veloce che posso provare a spiegare cosa intendevo, ci sono molte cose che descrivono il concetto online se vuoi saperne di più.
Riproporre un vecchio filo, per aggiungere una vecchia citazione, ma: _Castelluccia, Claude & Dürmuth, Markus & Perito, Daniele.(2012).Misuratori adattivi della forza delle password dai modelli Markov._
Tredici risposte:
#1
+60
AviD
2011-03-24 15:10:24 UTC
view on stackexchange narkive permalink

"Non considerando la forza bruta": questo è esattamente ciò che misurano questi strumenti.
Ovviamente non provano l'ingegneria sociale, né cercano di scoprire se è il compleanno del cane della prima ragazza dell'utente. L'aggressore potrebbe saperlo, ma questi strumenti no.

Quello che misurano è semplicemente la difficoltà per uno strumento di forza bruta di decifrarlo. Nemmeno l'entropia della password, che è un attributo del metodo di generazione, solo una stima di quanto tempo impiegherebbe uno strumento di bruteforcing per trovare con successo la password corretta.
Ovviamente, l'entropia ha un effetto su questo, ma è solo l'entropia totale che conta, non l'entropia per carattere. Quindi sì, avere molte opzioni equi-probabili per ogni personaggio si aggiunge all'entropia, ma la lunghezza può giocare un ruolo ancora più importante nel rendere una password indecifrabile, elevando l'entropia per carattere a una potenza superiore, per carattere contare. Questo produce una entropia totale molto più alta, che è l'unica cosa che conta.

Quindi, nel tuo caso, sì, la passphrase di 32 caratteri solo alfa è molto più forte della password di punteggiatura di 8 caratteri.


Proverò a fare i conti qui per un po ': (per favore correggimi quando sbaglio):

Se assumiamo una tastiera standard in stile americano , ci sono 85 possibili caratteri stampabili (possibilmente essere in grado di raschiarne altri, ma per ora lasciamo perdere): lettere minuscole + lettere maiuscole + numeri + punteggiatura standard + spazio.
Ciò garantisce una forza di ~ 6,3 bit per carattere; con una lunghezza di 8 caratteri, la password ti dà una forza di ~ 50,4 bit.
Nota davvero molto forte ... Anche se inseriamo qualche altro carattere "speciale", non aggiornerai molto.

Ora, per la tua passphrase di 32 caratteri, solo alfa ...
Supponiamo che solo lettere minuscole e maiuscole (anche se non ne hai usate), più uno spazio (U + 32). Nemmeno i numeri ...
Ciò ti dà 54 caratteri possibili, circa ~ 5,8 bit per carattere. Con una lunghezza di 32 caratteri, è una forza di oltre 185 bit. Sostanzialmente più forte. E questo è anche senza numeri, che di solito sono accettati anche in schemi di password "semplici".


Bruce Schneier parla spesso di come il passaggio a passphrase lunghe e memorabili sarebbe molto più sicuro rispetto a password brevi e casuali dall'aspetto strano.
Ora capisci perché.

Qual è stato il tuo metodo per calcolare la forza dei bit per carattere?
@SteveS - Ho preso un calcolo banale, di quante possibilità ci sono nell'intervallo accettabile (per ogni carattere, 85 | 54 possibilità) e l'ho tradotto in quanti bit sono necessari per rappresentare quelle possibilità. Certo, questa era una stima piuttosto approssimativa, calcolo del tipo back-of-the-tovagliolo, non molto degno di un laboratorio (da qui le approssimazioni), ma penso che sia ancora relativamente rappresentativo.
Ottima risposta @AviD. Se solo più persone facessero i conti (e i fornitori di software smettessero con il limite arbitrario "Spiacente, la tua password deve essere compresa tra 8-16 caratteri", sarei un uomo molto più felice.
l'appendice A qui ripercorre gli stessi calcoli. http://csrc.nist.gov/publications/nistpubs/800-63/SP800-63V1_0_2.pdf
@Graham molto interessante. Quel documento in realtà ha risultati diversi, principalmente perché mi riferivo a una selezione completamente casuale di caratteri, mentre il documento del NIST prende in considerazione in modo intelligente la scelta dell'utente - cioè, non casuale, e quindi meno bit di entropia per carattere. Penso che il documento NIST sia più corretto della mia risposta qui - ma ancora non sufficiente, se stai andando in questo modo dovrebbe essere presa in considerazione anche la conoscenza dell'utente, non solo le caratteristiche della lingua. Tuttavia, a quel punto non è più una questione di bit di entropia comunque ... ea prescindere, questa domanda riguardava specificamente la forza bruta ...
Il calcolo è più simile a 6,3 bit * 8 caratteri contro 7 parole casuali su, diciamo, 2048 (11 bit) ciascuna, quindi 50 qualcosa contro 77 bit di entropia. Hai anche bisogno di radere qualche bit in più dalla passphrase per tenere conto della grammatica. OTOH, devi raschiare via un bel po 'di bit dalla password tradizionale se vuoi che sia memorabile. Vedi anche http://xkcd.com/936/ - il risultato di quell'analisi, 28 contro 44 bit, è in realtà abbastanza accurato.
@tdammers hai ragione, ovviamente, se analizzi la passphrase come un insieme di parole (o anche una frase corretta), tuttavia, come ho notato, la trattavo come una serie di lettere, senza grammatica ecc., Secondo l'intento del domanda originale. Vedi anche i commenti precedenti, sui calcoli del NIST ...
La domanda originale si riduce a "controlla la lunghezza o la forza" e la risposta è "entrambi". Una buona passphrase è ancora più forte di una buona password breve anche se la tratti come una sequenza di parole, non di caratteri. E ovviamente, una passphrase di sei parole che abbia senso grammaticalmente ha un'entropia inferiore a sei parole inglesi scelte a caso; scegliere una citazione di un film famoso riduce ulteriormente l'entropia.
Ancora una volta, sono assolutamente d'accordo con te @tdammers, sul fatto che una passphrase sarebbe più forte, a prescindere. Tuttavia l'OP chiedeva informazioni sugli * strumenti * e questi strumenti non si riferiscono ad esso come una sequenza di parole, ma come una lunga serie di lettere. Come accennato, hai ragione sia in quanto trattarla come una frase grammaticalmente corretta, per non parlare delle parole corrette basate sul dizionario, abbasserebbe l'entropia, sia anche che quell'entropia è ancora superiore a quella di una semplice password.
#2
+17
user502
2011-03-24 17:58:34 UTC
view on stackexchange narkive permalink

Sei preoccupato che, poiché la passphrase utilizza parole del dizionario, potrebbe essere più facile da decifrare rispetto a qualcosa che deve essere forzato.

tl; dr: Questa è una preoccupazione teorica valida, ma al momento non è una preoccupazione pratica.

"Vado a pranzo stasera" è una frase di cinque parole che utilizza parole dei 5000 più comuni in lingua inglese. Ingenuamente, supporre che sia isomorfo indovinare una password di 5 lettere in un alfabeto di 5000 lettere, che è 3x10 ^ 18 possibilità. È più o meno la stessa di una password di 10 caratteri che utilizza lettere maiuscole e minuscole, numeri e simboli.

Ovviamente, un programma di cracking sufficientemente intelligente potrebbe ridurlo considerevolmente. La frase è una prosa inglese standard, che segue regole così rigide che ha un tasso di entropia delle informazioni di circa 1 bit per lettera. Ciò significa che la tua frase ha 33 bit di entropia, rendendola complessa solo come una password perfettamente casuale di 5 caratteri ASCII stampabili.

Non è molto complesso.

Tuttavia, per sfruttarlo mancanza di complessità, avresti bisogno di un "cracker di passphrase inglese" specializzato che potrebbe ottimizzare qualcosa come la modellazione della catena markov nei kernel per l'elaborazione GPGPU. Per quanto ne so, niente del genere è in fase di sviluppo in questo momento. Quindi, a meno che qualcuno con le risorse per creare quel software non voglia la tua passphrase, dovresti essere al sicuro per un bel po '.

Molto importante per questo è anche che, a meno che l'attaccante non sappia che la tua password è formattata in questo modo, non è uno strumento che utilizzerebbero. Anche con il numero relativamente piccolo possibile di password è una quantità enorme da eseguire "per ogni evenienza", specialmente su una connessione di rete.
È importante notare che se sbaglio deliberatamente una singola parola, come "pranzo" come "pranzo", la complessità aumenta immensamente.
Aumentato, sì, ma non "immensamente".Tutto ciò che un utente malintenzionato deve fare è includere alcuni errori comuni nel dizionario.Se aggiungi in media un refuso / errore di ortografia per parola, la dimensione del dizionario viene raddoppiata, aggiungendo un ulteriore bit di entropia per parola.Quindi è un valore, ma non tanto quanto passare da una frase a parole veramente casuali.
Penso che questa risposta potrebbe utilizzare alcuni aggiornamenti, le cose sono cambiate negli ultimi ≈8 anni.Quelle sono in realtà le prime 1600 parole o giù di lì, ma ancora più importante: https://github.com/initstring/passphrase-wordlist ... sembra che le persone abbiano iniziato a sviluppare gli strumenti per decifrare passphrase non casuali.
#3
+15
Jeff Atwood
2011-08-11 10:08:19 UTC
view on stackexchange narkive permalink

L'entropia è una cosa strana da misurare.

Pubblicazione speciale NIST 800-63, Linee guida per l'autenticazione elettronica nclude guide per la stima della forza della password:

L'entropia varia notevolmente a seconda che una password sia selezionata da un utente o generata casualmente. Statisticamente, indovinare il primo carattere di una password selezionata da un utente è difficile, ma indovinare il secondo è più facile e il terzo è ancora più facile. Le linee guida del NIST danno al primo carattere 4 bit di entropia quando si usano i 94 caratteri disponibili sulle tastiere standard, ma solo 2 bit per ciascuno dei successivi sette caratteri, e così via.

Le password selezionate casualmente non vengono visualizzate modelli, quindi ogni carattere ha lo stesso livello di entropia, circa 6,6 bit.

Ciò significa che una password di otto caratteri selezionata da un utente ha 18 bit di entropia, mentre una password casuale della stessa lunghezza ha circa 52,7 bit.

In altre parole, se puoi determinare i primi 3 caratteri della mia password sono

Soggezione

Quindi le probabilità che il prossimo carattere sia s sono molto, molto più alte di quanto non sia *.

Quindi quando diciamo che un carattere di password può essere qualsiasi carattere, non è proprio vero; la maggior parte delle persone usa parole che hanno schemi forti e riducono implicitamente il possibile set dei seguenti caratteri, producendo così una password con minore entropia (casualità).

#4
+14
hpavc
2011-03-24 14:37:45 UTC
view on stackexchange narkive permalink

Non sono sicuro che "stasera pranzerò" sia vulnerabile al dizionario, è una frase di sette parole. Dove "th1 $ .v4l" è una frase di due parole con l'aggiunta di un carattere e la sostituzione del carattere sembra essere qualcosa che i cracker di password hanno affrontato da sempre.

Alcuni tester di password usano cracklib + ajax come i test una piccola base di regole per eliminare la tua password "this.val".

Allora cosa stai dicendo esattamente? Che la prima password sia più sicura anche se è composta da parole comuni del dizionario senza altri caratteri speciali?
@iijj, è esattamente corretto: la lunghezza è più importante.
#5
+8
nealmcb
2011-05-22 22:22:34 UTC
view on stackexchange narkive permalink

La questione dell ' affidabilità dei controlli di sicurezza delle password si estende anche alla sicurezza del controllore in generale. È spaventoso vedere una proliferazione di misuratori di sicurezza delle password online. Stai esponendo inutilmente la tua password a qualche sito là fuori su Internet! Anche le applicazioni locali per il controllo delle password possono essere nefaste. Afferma che il sito utilizza javascript e non trasmette mai la password su Internet non può essere considerato attendibile. Alcuni siti di test di sicurezza delle password sono sicuramente gestiti da cappelli neri, che li aggiungono semplicemente ai loro dizionari insieme a qualsiasi altra informazione che possono raccogliere su di te. Altri siti sono gestiti da persone con buone intenzioni, ma forse cattive implementazioni, come un server vulnerabile o la mancanza di https. E altri ancora sono vulnerabili agli attacchi delle "autorità" che hanno modi per costringere il sito a rivelare ad es. le password inviate da determinati intervalli di indirizzi IP.

Suggerisco che chiunque utilizzi un sito di questo tipo non dovrebbe mai inviare una password che intende effettivamente utilizzare.

Vedi, dove perdi il punto è che probabilmente hai già intenzione di utilizzare il sito. L'aggiunta di un "Controllo della sicurezza della password" non aumenta il rischio. Se sono davvero malvagi semplicemente non crittograferanno la tua password e non la prenderanno, non c'è bisogno di un intero stratagemma "Password Strength Checker" ...
@dan - per chiarire, sto parlando del codice ospitato di terze parti indicato nel post originale e da altri. Ovviamente, se un sito su cui sto creando una password fornisce un proprio controllore (che ospita, in modo sicuro, ecc.), Allora c'è solo un po 'di superficie di attacco in più, ma nello stesso sito.
#6
+7
Rory Alsop
2011-03-24 15:27:29 UTC
view on stackexchange narkive permalink

La lunghezza è quasi tutto quando si cerca di difendersi da attacchi di forza bruta.

Anche i cracker di password di base consentono sostituzioni in stile 1337, quindi nel tuo esempio stai effettivamente confrontando una passphrase di 7 parole con una passphrase di 2 parole.

Fintanto che hai passphrase lunghe (dove la definizione esatta di long può variare a seconda delle tue esigenze, ma dovrebbe essere almeno superiore a 13 caratteri per fare le probabilità di un attacco al tavolo arcobaleno minimo) costringi un utente malintenzionato a provare altre forme di attacco, come l'ingegneria sociale; scoprire dove hai scritto la passphrase; tenere in ostaggio il tuo gatto, ecc.

#7
+7
Thomas Pornin
2013-02-03 21:13:27 UTC
view on stackexchange narkive permalink

Teoricamente, i "misuratori di sicurezza della password" non possono funzionare . Lo strumento vede solo il risultato del processo di generazione della password, mentre la "forza" della password è in realtà una proprietà del processo. Vedi questa risposta e poi quella risposta per i dettagli.

Il meglio che un'applicazione di misurazione della sicurezza della password può darti è quanto tempo ci sarebbe voluto per violare la tua password - in altre parole, si presume che l'aggressore esegua lo stesso codice e non sappia più nulla di te. Questo non è un presupposto ragionevole nella pratica: l'attaccante, quando ti attacca, è, beh, dopo di te, specificamente. Affidarsi a un misuratore di password per la sicurezza è come pregare che tutti gli aggressori siano incompetenti: è una sorta di "atto di fede".

#8
+5
Mark Davidson
2011-03-24 14:24:33 UTC
view on stackexchange narkive permalink

Guardando il Javascript per quello strumento Microsoft sembra che abbia solo un elenco limitato di parole del dizionario (vedere le righe da 264 in poi nel file js), quindi questo potrebbe spiegare perché la tua passphrase sta ottenendo una valutazione più alta di quanto forse dovrebbe.

Personalmente consiglierei questo tester di sicurezza della password che fornisce una buona analisi degli elementi che compongono la tua password e ti dice come può essere migliorata. Valuta la tua password "stasera pranzerò" al 56% e la tua seconda password "th1 $ .v4l" al 74%, il che sembra più realistico.

Tuttavia, questo strumento non ne utilizza elenco di parole - la tua passphrase è contrassegnata solo per essere tutta minuscola, mentre "vado a pranzo stasera!" ottiene il 98%. Puoi trarre le tue conclusioni sull'utilità della percentuale di classificazione per età.

Per quanto riguarda l'incidenza sulla durata del checkout del tempo di cracking questo articolo. Nota che risale al lontano 2009, tuttavia, e i cracker di password basati su GPGPU possono ora gestire 10 ^ 9 / sec (il livello di attacco più alto di "classe F" nell'articolo) su un singolo PC da gioco / workstation con una GPU da $ 500 carta.

Sembra un ottimo strumento, grazie. Il punteggio complessivo implica che è più difficile da decifrare?
oltre al fatto che richiede di digitare la password in un modulo tramite http ...
@Yaur il tester non invia affatto la tua password attraverso la rete. Valuta la forza utilizzando JavaScript eseguito localmente.
@Mark Davidson che è una cosa difficile da verificare e qualcosa che dovrebbe essere fatto su base continuativa.
@Yaur Non sono d'accordo. La verifica è abbastanza semplice, usa la modalità di monitoraggio della rete Firebug e puoi guardare tutte le attività da e verso il sito. Puoi anche monitorarlo usando WireShark.
@Yaur In alternativa puoi usare qualcosa come `pwqcheck` sotto Linux e verificare manualmente il codice sorgente.
Valutare la qualità delle password è molto difficile. Il tuo controllore consigliato ha dato "Molto forte" / "97%" per la password "Il cane ha mangiato i compiti!" ... Forse fare una ricerca su Google per la password sarebbe una metrica migliore? Quella "password" dà 6000 accessi quindi probabilmente non è eccezionale: http://lmgtfy.com/?q=%22Dog+ate+homework!%22
Cordiali saluti, lo strumento per la sicurezza della password che hai suggerito mi ha detto "Password1!"era "Forte".(Cosa che ovviamente non è; in effetti è così debole che probabilmente potrei risolverlo con alcuni secondi di indovinare manualmente.) Come altri commentatori hanno notato, valutare la forza della password è _molto_ più difficile di quanto sembri suggerire.
#9
+4
CogitoErgoCogitoSum
2012-02-03 17:51:26 UTC
view on stackexchange narkive permalink

Di recente ho visto un fumetto sul giornale. O forse era una copia digitale online di un fumetto, non ricordo.

Illustrava proprio questo dibattito. E ora ti spiegherò il punto che ha fatto:

Solo perché una password è breve non significa che sia facile da indovinare, come nel caso di "th1 $ .v4l". Ma solo perché una password è lunga non significa nemmeno che sia facile da indovinare, come nel caso di "vado a pranzo stasera".

Il nocciolo della questione è che nessun hacker umano serio sta per sedersi lì e indovinare la tua password. Potrebbero usare parole del dizionario, ma quei dizionari non contengono tutte le frasi possibili. Solo parole.

No, quello che fanno gli hacker (quando hanno esaurito un tipico dizionario di PAROLE), è che di solito fanno passare sistematicamente al computer ogni possibile combinazione. Dall'inizio alla fine. Se vengono forzati su questo percorso, più breve è la password, peggio. Più a lungo è, meglio è. Indipendentemente dalla presenza di cifre o simboli. Le cifre ei simboli contano solo per gli umani che ricordano e per gli umani che indovinano. Per un computer sono la stessa cosa ... una sequenza di 1 e 0 ... e non fa differenza.

Fatti un favore. Mantienilo lungo ma semplice. Breve e complesso potrebbe costare tempo a un hacker, ma lungo e semplice farà la stessa cosa. La domanda è: vuoi una password facile da ricordare o difficile da ricordare?

#10
+3
Vishwanath Dalvi
2011-03-25 10:30:06 UTC
view on stackexchange narkive permalink

Bene, tutti gli strumenti di verifica della sicurezza della password verificano lo sforzo necessario per trovare la password utilizzando la forza bruta e l'attacco del dizionario.

come se confrontassi qui i risultati di entrambe le password.

http://www.passwordmeter.com/

"th1 $ .v4l" è

Una password sicura con il 74%

"vado a pranzo stasera" è

Buona password 56%

questa password richiederà meno tempo per essere violata usando la forza bruta.

http://www.passwordmeter.com/ è un ottimo strumento per le statistiche sulle password, ma il numero di forza finale non è buono. Considera la password: "111111111111111111111111111111111113333333336666666666546546644646". Il punteggio è 0%. È una sciocchezza. Mi piace lo strumento http://password-checker.online-domain-tools.com/. Ti permette anche di fare un controllo del dizionario.
#11
+3
Daniel Miladinov
2011-12-28 08:55:46 UTC
view on stackexchange narkive permalink

Bene, se definisci la forza di una password come la sua difficoltà o probabilità di essere violata, allora quasi controintuitivamente, la forza di una password è più una funzione della sua lunghezza che della sua difficoltà da ricordare.

Quando un potenziale aggressore non sa nulla della tua password e può usare solo la forza bruta per violare la tua password, una password più lunga che è molto più facile da ricordare, come

"vado a pranzo stasera"

richiederà più tempo per decifrare che

"th1$.v4l"

semplicemente perché ci sono più caratteri che l'attaccante dovrebbe indovinare correttamente in ordine per decifrare la password. Le password più lunghe presentano uno spazio di ricerca più ampio da esaurire, danno al tuo ago (password) un pagliaio molto più grande in cui nascondersi.

#12
+3
Kevin Li
2014-04-19 04:56:31 UTC
view on stackexchange narkive permalink

La sicurezza della password può essere stimata solo da solo tu o da qualcun altro se gli dici come crei le tue password. Ad esempio, se utilizzo un generatore di password casuale che utilizza un set di 50 caratteri e la mia password è lunga 8 caratteri, la mia password sarà 1 tra circa 3,9 × 10 13 o 2 45 . Se utilizzo password cinesi basate su Pinyin e la mia password è una frase di 4 parole, dato che ogni parola è su un massimo di 2.050, la mia password è 1 su un possibile 1,8 × 10 13 . La romanizzazione Pinyin media di un carattere cinese è lunga da 3 a 4 caratteri, quindi una password di "4 parole" di circa 16 caratteri. Tuttavia, questa password Pinyin è più debole della password di 8 caratteri generata da un set di 50 caratteri.

Se un utente malintenzionato sa come è stata generata una password (diciamo esaminando le password in testo semplice rubate da alcuni siti insicuri) da una certa persona, hanno le conoscenze necessarie per ridurre molto la difficoltà di forzatura bruta! Poiché sanno che non stai più utilizzando tutti i caratteri possibili sulla tastiera, possono eliminare combinazioni impossibili e risparmiare tempo.

La prossima volta che generi una password, pensa all'algoritmo / metodo che stai utilizzando utilizzando per generarne uno. Utilizzo di Password Safe per generare una password di 21 caratteri da un set di 72 caratteri ( + - = _ @ # $% ^ &<> / ~ \? AbcdefghijkmnopqrstuvwxyzandABCDEFGHJKLMNPQRTUV89) ottieni circa 1,0 × 10 39 possibili combinazioni o 130 bit di sicurezza.

Dieci selezioni casuali da un elenco di quattromila parole comuni daranno all'incirca la stessa entropia della password, pur essendo facile da digitare o trascrivere se necessario.La lunghezza fa una differenza enorme, anche con ASCII tutto minuscolo.
#13
+1
Ajedi32
2019-02-19 23:15:47 UTC
view on stackexchange narkive permalink

I controlli di sicurezza delle password, di regola, non sono molto affidabili. Tendono a fare affidamento su calcoli eccessivamente semplicistici che presumono che gli aggressori tenteranno solo di indovinare la tua password provando ogni possibile combinazione di caratteri, un presupposto che è raramente vero nella pratica.

In In realtà, un aggressore motivato può escogitare ogni sorta di strategie diverse per indovinare la tua password, alcune delle quali nessun controllo di sicurezza della password potrebbe essere mai stato programmato per prendere in considerazione.

Ad esempio, la password "! QAZXSW @ #EDC "potrebbe sembrare piuttosto casuale, finché non ti rendi conto che l'ho scritto premendo un semplice schema di tasti su una tastiera inglese standard. Un utente malintenzionato che utilizza un programma progettato per indovinare le password basate sul layout della tastiera potrebbe facilmente decifrare tale password in pochi minuti. (E in effetti, Pwned Passwords Checker di Have I Been Pwned indica che questa password esatta è già stata utilizzata e violata più volte.) Allo stesso modo, "stasera pranzerò" potrebbe sembrare forte al tuo tipico controllo della sicurezza della password, ma potrebbe essere facilmente violato da un utente malintenzionato utilizzando un programma progettato per indovinare frasi comuni in inglese.

Ci sono controlli della sicurezza della password che sono più bravi in ​​questo genere di cose rispetto ad altri ( ZXCVBN, ad esempio, è in grado di rilevare la password basata su uno schema di tastiera che ho fornito sopra e fornire una stima più realistica della forza) ma alla fine non è sempre possibile dire quanto è forte un la password è solo analizzando la password stessa . Non è lecito ritenere che solo perché il controllo della sicurezza della password che stai utilizzando non è in grado di indovinare quale metodo hai usato per scegliere la tua password, un utente malintenzionato che cerca di indovinare la tua password non lo farà. Questo presupposto è noto come "sicurezza per oscurità" ed è considerato una cattiva pratica su cui fare affidamento nella comunità della sicurezza delle informazioni.

Allora cosa dovresti fare invece? Scegli le tue password in modo casuale , preferibilmente utilizzando una fonte di casualità come i dadi che non può essere indebolita da pregiudizi umani naturali. In questo modo, anche se presumi che l'aggressore sappia esattamente come hai generato la tua password, puoi comunque calcolare facilmente quante ipotesi dovrebbe provare l'attaccante prima di indovinare correttamente la tua password.

Diceware è un buon esempio di tale metodo per generare password. Quattro parole Diceware casuali richiederanno in media 7776 4 / 2 = ~ 1,83 quadrilioni di tentativi per indovinare un utente malintenzionato, anche se conosce l'elenco esatto di parole che hai scelto la tua password a partire dal. Le password generate da un gestore di password sono efficaci per ragioni simili.

Per ulteriori informazioni su come scegliere le password in modo sicuro, consiglio la risposta di Thomas Pornin a "XKCD # 936: password complessa breve , o una lunga passphrase del dizionario? ", che va nei dettagli sull'entropia delle password e su come calcolare la forza di una password generata casualmente.



Questa domanda e risposta è stata tradotta automaticamente dalla lingua inglese. Il contenuto originale è disponibile su stackexchange, che ringraziamo per la licenza cc by-sa 2.0 con cui è distribuito.
Loading...