Quali sono i punti deboli di questo metodo di generazione di password? Come può essere migliorato?

6

Recentemente mi sono imbattuto nel problema, che ho molti più account di quanti sia in grado di ricordare le password. Non voglio usare una password sicura, perché non posso accedervi su un altro computer, perdo tutti gli accessi se perdo questa cassastrong e un utente malintenzionato ottiene molto logindata, se compromette la cassastrong. Invece ho desiderato un metodo, per generare password sicure con un metodo che puoi sempre riprodurre e ricordare solo una password / frase / segreto. Per trovare un tale metodo, ho chiesto questa domanda .

Nel frattempo, un mio amico e io ci siamo inventati un metodo di generazione del genere. Ora voglio sapere, se è insicuro, quali debolezze contiene e come può essere eventualmente migliorato.

Il metodo che abbiamo creato ha bisogno di un segreto centrale. Questo dovrebbe essere un testo, che nessun altro conosce, ma è facile da ricordare per te stesso. Una poesia potrebbe essere più facile da ricordare, ma dovresti creare qualcosa di personale, in modo che nessuno possa concludere il testo. Quindi non prendere Jabberwocky , poiché tutti conoscono questo testo. (Ma io sceglierò Jabberwocky per l'esempio).

Ora prendi il nome della piattaforma e hai bisogno di un accesso. Può essere qualcosa come HOMEPC o STACKEXCHANGE. Prendi il primo carattere del tuo account e cerca la prima parola che la contiene nel tuo segreto. Per Jabberwocky la prima parola con una "h" (HOMEPC) è "la" e la prima parola con una "s" (STACKEXCHANGE) è "Twas". Ora prendi la parola successiva con il seguente carattere, e così via. In questo modo generi la password specifica. Gli esempi sono:

HOMEPC -> 'the toves gimble the vorpal Jabberwock'
STACKEXCHANGE -> 'Twas the and Jabberwock took time manxome Jabberwock with flame And through The'

Se il segreto non è abbastanza lungo, ricomincia dall'inizio. Se il nome della piattaforma è troppo breve, prendilo due o tre volte. Lo stesso se hai la sensazione, la password non è abbastanza buona.

EBAYEBAY -> 'the gimble wabe mimsy were borogoves And my'

Il segreto dovrebbe contenere ogni carattere almeno una volta (Jabberwocky manca q e z).

Quali sono i punti deboli in questo metodo? In che modo puoi attaccare le password generate da questo o, peggio ancora, concludere ad altre password se intercettato?

    
posta Mnementh 20.12.2010 - 21:23
fonte

7 risposte

9

Questo è un metodo inadeguato per la generazione di password.

  1. Richiede la memorizzazione di un segreto molto lungo. Questo è molto difficile per la maggior parte degli utenti, in particolare se si desidera avere un sacco di entropia.

  2. Qual è il link più debole? Lo stesso di sempre: l'umano. L'anello più debole è l'umano che sta scegliendo il poema (il segreto centrale). Sospetto che, in pratica, una grande parte degli utenti sceglierà una poesia con un'entropia relativamente bassa: cioè, è una delle poche possibilità. Scommetterei che ci sono al massimo circa 2 ^ 20 poesie nel mondo, e una parte significativa degli utenti potrebbe usare una di quelle poesie 2 ^ 20. Se è così, questo è un metodo debole. Qualsiasi sito web che conosce una qualsiasi delle tue password può recuperare il poema e quindi indovinare tutte le tue password su tutti gli altri siti.

  3. Inoltre, un utente malintenzionato che non sa nulla di te e vuole entrare nel tuo account su qualche sito può solo iniziare a provare poesie, in ordine di popolarità decrescente, e provare ogni password che risulta. Ci sono buone ragioni per pensare che questo avrà successo con un tasso di successo depressivamente alto. Ad esempio, guarda gli studi delle password (vedi riferimenti sotto); si scopre che un piccolo dizionario di password comuni è sufficiente per rompere una frazione significativa delle password dell'utente. Sospetto che il problema sarà ancora peggiore con questo schema. È abbastanza brutto da provare a memorizzare una password di 6-8 caratteri; cercare di memorizzare un'intera poesia sarebbe orribile.

  4. Questo è banalmente sconfitto con Google. Hai elencato tre esempi di password del sito per HOMEPC, STACKEXCHANGE ed EBAY. Scegli qualcuna di queste password del sito e taglia e incolla su Google. In ogni caso, la prima risposta è il poema Jabberwocky. Pertanto, in ciascun caso, qualcuno che conosce una singola password del sito può apprendere tutte le altre password del sito. Non va bene. Mi aspetterei che questo sia un problema generale per molti utenti: non specifico per il tuo esempio, ma uno di quelli che avrebbe successo su una grandissima parte di utenti.

Come sempre, il difficile problema in questo spazio è l'usabilità: lo schema deve essere progettato per funzionare bene per un utente tipico. Sospetto che questo schema si collochi in modo insufficiente su questi criteri.

C'è un'enorme quantità di lavoro precedente su questo argomento. Si scopre che questo è un problema impegnativo, ma ci sono alcune soluzioni abbastanza buone. Suggerisco di guardare PwdHash (www.pwdhash.com) e Passpet (passpet.org). O uno di questi è una soluzione ragionevole. Passpet è probabilmente più sicuro, ma più difficile da usare. Non consiglio assolutamente di provare a inventare la tua soluzione homebrew, specialmente se non sei già a conoscenza del lavoro precedente su questo problema.

In alternativa, molti gestori di password del browser offrono la possibilità di sincronizzarsi su più macchine o più browser (utilizzando lo spazio di archiviazione nel cloud). Perché non provarne uno? (Non capisco le tue affermazioni sul fatto di non essere in grado di usarlo su un'altra macchina. Le buone soluzioni forniscono tutte un modo per usare le tue password da più macchine.)

    
risposta data 07.01.2011 - 05:59
fonte
7

Sono d'accordo con User502 che per le password generali del sito web potrebbe andare bene. Tuttavia ...

non ti offre un'opzione per la password successiva che scegli se quel sito web richiede la scadenza della password e nessun riutilizzo. Vorrei qualcosa che potesse farcela.

    
risposta data 20.12.2010 - 22:12
fonte
4

Questo metodo non è crittograficamente strong [1], ma sembra in abbondanza per sconfiggere gli attacchi casuali di database come quelli di Gawker.

FWIW, c'è un sondaggio sulle opzioni di gestione delle password basate sul web on serverfault .

[1] Dato che stai scegliendo una frase in inglese, l'entropia è intorno a 1 bit per lettera e il tuo metodo potrebbe essere indovinato in modo superficiale se qualcuno sta cercando di recuperare in modo specifico una password da uno o due servizi con cui hai effettuato l'autenticazione.

    
risposta data 20.12.2010 - 21:42
fonte
4

Questo sembra un modo incredibilmente difficile per replicare il link . È disponibile su ogni piattaforma (compresi i dispositivi mobili e basati sul web, che possono essere caricati sul tuo server se sei paranoico come me) ed è facile usare qualsiasi variazione, purché non diventi troppo complicato con la modifica del regole. Ho usato il generatore di javascript molte volte su un PC remoto. Devi solo ricordare quali siti non accettano la tua configurazione di default, se presente. Permette perfino di inserire un nome utente o un modificatore per gestire la rotazione della password.

Il tuo metodo, d'altra parte, fallirà non appena un sito accetta solo una lunghezza di password massima corta.

    
risposta data 22.12.2010 - 03:51
fonte
4

Questo schema dipende molto dal segreto centrale che scegli. Se usi un testo quotidiano, come anche un poema oscuro, genera lunghe password con poca entropia per carattere. La distribuzione delle lettere nei nomi dei siti è distorta e la distribuzione delle parole in prosa è strongmente distorta e auto-correlata.

Con il giusto segreto probabilmente andrebbe bene, e con la pratica si potrebbe ottenere abbastanza velocemente a fare la ricerca di parole per carattere.

Potresti generare un buon segreto (con entropia sostanziale per ogni parola) con apg. Dal momento che utilizzerai un numero di parole nella tua password generale, ognuna potrebbe essere piccola, ad es. 3 personaggi. Si noti inoltre che per impostazione predefinita apg produce password "pronunciabili", quindi hanno una quantità di entropia inferiore rispetto alle stringhe a 3 caratteri casuali.

$ apg -m 3 -x 3
Kip
Ab7
Jiz
jun
ted
yuc

Se disattivi l'opzione "pronunciabile" diventa un po 'più difficile:

apg -m 3 -x 3 -a 1
KIX
%(F
^hg
_Jy
!fb
QT3

Naturalmente questo è più difficile da memorizzare rispetto a una poesia. In pratica equivale ad aggiungere due (o più) caratteri casuali prima e dopo ogni lettera del nome del sito.

Entrambi questi schemi sono simili a un altro che ho appena trovato: Keep Your Password sicure su un pezzo di carta

    
risposta data 20.12.2010 - 22:33
fonte
4

Mi sembra che tu stia soffrendo di una sorta di sovraccarico della password.

Non sono sicuro di come sono configurati i sistemi o cosa sono, ma puoi sempre considerare i metodi di autenticazione che non sono affatto basati su password.

Le password al giorno d'oggi sembrano essere sempre vulnerabili alla forza bruta, e data la disponibilità di strumenti di forza bruta e tabelle arcobaleno (e collisioni all'interno degli algoritmi di hashing - cioè md5 e sha1) per non parlare della capacità di sfruttare il potere delle GPU sull'infrastruttura cloud: potrebbe essere qualcosa da considerare.

Potresti prendere in considerazione altri metodi di autenticazione che si basano intrinsecamente su qualche altro componente che è considerato "unbruteforceable" (in un certo senso della parola), come la biometria.

Mi viene in mente anche l'autenticazione a due fattori, ovvero qualcosa che conosci (una password, un pin, ecc.) e qualcosa che hai (dispositivo rsa ecc.)

Anche le password una tantum potrebbero essere interessanti.

    
risposta data 22.12.2010 - 22:24
fonte
0

L'algoritmo di generazione della passphrase è protetto solo dall'oscurità. Se un utente malintenzionato ottiene uno o due dei tuoi passphrase otterrà un buon sottogruppo di parole possibili nelle tue passphrase e le lingue umane possono essere parzialmente recuperate dal contesto, in modo che le tue passphrase non ottengano tanta entropia come sembra

Suggerirei un modo per aggirare gli aspetti negativi di un gestore di password offline. Ad esempio, potresti ricordare solo 3/4 passphrase non correlate con caratteri speciali, numeri, ecc. Uno di questi per la cassastrong, e gli altri per il tuo account di posta elettronica e servizi critici che non puoi perdere, abilita anche 2 fattori autenticazione quando possibile su tali servizi. Quindi puoi caricare la tua sicurezza su uno di questi account a 2 fattori (Google Drive, f.e.). Inoltre suggerirei di aggiungere o anteporre qualcosa che conosci solo alle password in sicurezza, quindi se un utente malintenzionato ha accesso ad esso non sarà in grado di usare le tue password senza il tuo segreto

Anche nel caso in cui un aggressore sia in grado di accedere alla causa sicura che hai dimenticato di rimuovere da un determinato computer che hai usato o situazione simile, ha bisogno del segreto. E nel caso in cui lo ottenga, puoi comunque accedere ai tuoi account critici per recuperare gli altri

    
risposta data 05.12.2016 - 18:57
fonte

Leggi altre domande sui tag