it-swarm-eu.dev

Questo schema di password è legittimo?

Ho ricevuto un invito per una fiera della sicurezza IT ( https://www.it-sa.de/en ).

Hanno inoltre consegnato una password "Kryptonizer". Questa è una piccola carta da appendere al tuo portachiavi con il seguente (valori di esempio, la mia traduzione):

Spesso è troppo facile per gli hacker acquisire informazioni personali. Il motivo: le password che possiamo facilmente ricordare non sono criptiche. Sono spesso nomi o parole comuni come "Snowden" o "Admin". Questa scheda cerca di risolvere questo problema rendendo facile ricordare le password criptiche.

Input   Start  ABC  DEF  GHI  JKL  MNO  PQRS  TUV  WXYZ
Output  4uR=?  x    1    F    3    Y    i     #    9

Versione originale in tedesco:

Hintergrund: Passwort-Hackern wird der Zugang zu persönlichen Daten in Internet häufig viel zu leicht gemacht. Der Grund liegt auf der Hand: Passwörter, die wir uns merken können, sind meistens nicht besonders kryptisch, sondern orientieren sich an gängigen Namen oder Wörtern wie "Snowden" o "Admin".

Tutto dall'output è casuale per ogni singola carta (66 caratteri diversi tra cui scegliere). Ora dobbiamo scegliere una password "facile" (raccomandano almeno 8 caratteri):

Input:  HELLOWORLD
Output: 4uR=?F133Y9Yi31

Raccomandano inoltre di utilizzare questa scheda per una sola password e di cambiarla, se si perde la carta.

Questo schema di password è buono? Viene da una grande fiera della sicurezza con molti esperti.

La mia ipotesi è che tu abbia un'entropia ridotta a causa di soli 8 personaggi diversi (+ 1 sequenza iniziale), ma finché la tua carta rimane sconosciuta, l'attaccante non può sfruttare questo fatto.

51
izlin

Informativa completa: Lavoro per un'azienda che distribuisce tali carte. Questa risposta tuttavia è la mia personale opinione su di loro.


L'idea di queste carte è che alcuni utenti sono davvero pessimi nel ricordare password o passphrase. L'approccio ingenuo sarebbe quello di dire agli utenti "Basta migliorare nel ricordare le password", ma l'esperienza ha dimostrato che tale consiglio è controproducente per alcuni utenti.

La loro memoria sembra essere cablata per ricordare solo parole semplici, che probabilmente hanno qualcosa a che fare con il loro lavoro. Quindi qualcuno che lavora in una fabbrica di automobili potrebbe ricordare una parola come Engine.

Engine, ovviamente, è una password terribile - sia in lunghezza che in entropia. Quindi il "Kryptonizer" o le carte con nomi simili cercano di aggiungere entrambi.

La lunghezza è aggiunta dal prefisso, 4uR=? in questo caso. Aumenta immediatamente la lunghezza della password di 5 caratteri, aumentando una password di 6 caratteri fino a una password di 11 caratteri. Non perfetto, ma un miglioramento.

L'entropia viene aggiunta sostituendo ogni personaggio con un personaggio scelto casualmente. Non esattamente una sostituzione 1: 1, ma abbastanza vicino. Dal momento che ogni carta è unica, non è possibile creare una regola predefinita su come manipolare ogni frase del dizionario.

In questo esempio, Engine si trasformerebbe in 4uR=?1YFFY1. È una buona password? Probabilmente non eccezionale, ma sicuramente molto meglio di Engine.

Problemi con questo schema

Certo, non è un sistema perfetto. Una buona passphrase non può essere sostituita da una piccola carta di carta. Poiché tre caratteri di input sono associati a un carattere di output, la password risultante perde entropia invece di acquisirla. Il guadagno netto dell'entropia è che gli attaccanti non possono più usare gli attacchi del dizionario con la stessa facilità. Per fare ciò, dovrebbero avere accesso alla mappatura o eseguire una ricerca esaustiva. Se un attaccante sa che è stata usata una carta simile, può usarla a proprio vantaggio per accelerare una ricerca esaustiva.

Inoltre, ci si aspetta che gli utenti mantengano la propria carta in giro, e molti probabilmente la lasceranno sulla propria scrivania, sotto la tastiera o in posizioni errate simili. Se perdono la carta, probabilmente perderanno anche la password. Avranno bisogno di una nuova carta e cambieranno anche la loro password, il che non è molto utile per l'usabilità.

Sommario

Quindi, è un buon sistema? In definitiva, direi che devi giudicarlo nel contesto di ciò che è progettato per fare. È un aiuto per uno specifico gruppo di utenti, che altrimenti userebbe password terribili e empie. E, secondo me, aiutare gli utenti a scegliere password leggermente migliori per un costo trascurabile. Naturalmente, non è un proiettile d'argento che risolve magicamente il problema dell'archiviazione e della generazione di credenziali.

Se possibile, usa sempre un gestore di password, lascia che generi password lunghe e ad alta entropia e memorizzale per te in modo sicuro.

Se ciò non è possibile (ad es. Per accessi al sistema operativo), ti consiglio di utilizzare Diceware o di creare una frase lunga e priva di senso, come TheGreenLightFromOurEyesShinesThroughTheMirrorOfTime.. Assicurati solo che una frase del genere non sia presa da un libro o un film.

85
MechMK1

Dipende sempre da cosa lo confronti! Qual è l'alternativa realistica, che gli utenti potrebbero effettivamente utilizzare, per utilizzare questa carta?

Chiaramente, 4uR=?F133Y9Yi31 è una password molto migliore di HELLOWORLD. Se stai dando questa carta a un non tecnico che non sceglierà buone password o utilizzerà comunque un gestore di password, allora è un miglioramento.

D'altra parte, l'utilizzo di questo sistema è molto peggio della semplice scelta di una password casuale di 16 lettere che non ricorderai mai e di memorizzarla nel tuo gestore di password. Un utente malintenzionato che sa quali lettere ci sono sulla carta (ad esempio guardando le password trapelate dallo stesso utente) potrebbe facilmente decifrarlo - improvvisamente non è meglio di HELLOWORLD!

Quindi questa è una buona idea per le persone che potrebbero usare un gestore di password? No, assolutamente no. Per tuo nonno? Può essere! Non lasciare che perfetto sia il nemico del bene.

64
Anders

Non chiaro al 100% dalla tua esposizione, ma capisco che la seconda fila viene generata in modo indipendente a caso per ogni carta. Lavorerò da quel presupposto. Suppongo inoltre che:

  • L'attaccante sta provando a indovinare la tua password.
  • L'attaccante sa che hai generato la tua password usando una simile carta.
  • L'attaccante non conosce i contenuti casuali esclusivi della tua carta.
  • L'attaccante ha i mezzi per testare efficacemente le proprie ipotesi, ad esempio perché ha rubato una voce del database delle password con un hash della password.

Quanto è difficile per l'attaccante avere successo?

Innanzitutto, devono indovinare i 5 simboli di avvio casuali. Se vengono scelti da un set di 66 caratteri, come dici tu, ognuno ha il registro2(66) ≈ 6 bit di entropia, per un totale di 6 × 5 = 30 bit collettivamente - circa la stessa forza già del (in) famoso Tr0ub4dor&3.

Secondo: come parte del processo di utilizzo della carta, si sceglie una password umana. Ma la carta divide l'alfabeto in otto gruppi in modo tale che le lettere in ciascun gruppo siano trattate come scelte equivalenti tra loro. Ciò significa che dopo il raggruppamento, ogni lettera nella password umana non può contribuire più del log2(8) = 3 bit di entropia, ma in pratica sarà inferiore:

  • Le lettere di alcuni gruppi sono più frequenti di altre;
  • Alcune parole sono più frequenti di altre;
  • Alcune password umane (ad esempio PASSWORD) sono dolorosamente più frequenti di altre.

Terzo: a ciascuno di questi gruppi viene assegnato un personaggio scelto casualmente da un set di 66. Ognuna di queste scelte è di circa 6 bit di entropia e che otto gruppi sembrano 48 bit ... ma è improbabile che l'attaccante dovrà rompi l'intero tavolo nella tua carta, perché molto probabilmente la password umana "attiverà" solo un sottoinsieme degli otto gruppi e non dovranno indovinare i simboli assegnati ai gruppi "dormienti". Se scegli 8 oggetti a caso con la sostituzione di un set di 8, ti aspetti di disegnare circa 5 oggetti distinti ( fonte ), il che significa la quantità di entropia della tabella che una password umana di otto caratteri è molto probabilmente per innescare è di 30 bit. Ma alcune password umane innescerebbero un numero inferiore di gruppi, mentre altre attiverebbero di più.

Analizzare l'interazione tra i modelli statistici del testo inglese e i raggruppamenti nelle carte è lasciato come un esercizio noioso per il lettore. Penso che possiamo concludere provvisoriamente che questo metodo di carte non è ovviamente rotto - produrrà password con una garanzia di almeno 36 bit di entropia (30 per i caratteri iniziali, 6 per l'attivazione di un solo gruppo), e tu sei realisticamente probabile per vedere 54 bit (30 bit per i caratteri iniziali, 24 per l'attivazione di quattro gruppi) anche senza contare l'entropia delle password umane.

Non penso che dovremmo essere sorpresi se questo metodo non fa schifo. Dopotutto, la mia spiegazione sopra mostra che ogni carta contiene 78 bit di entropia: 30 dai primi cinque, 48 dall'assegnazione casuale di personaggi ai gruppi. 78 bit riguarda l'entropia della stampa casuale di 12 caratteri ASCII (12 × log2(95)). Imballare questa entropia in una piccola carta è un'idea chiara; il punto debole del sistema è che non lo sfrutta in modo affidabile (la questione dei gruppi "dormienti").


Un altro scenario che potremmo considerare è questo. Supponiamo che l'attaccante riesca a rubare la password generata (ad es. Da un sito Web che la memorizza come testo normale). Possono lavorare all'indietro da quello per indovinare la tua password umana o i valori casuali nella tua carta? Bene, in quel caso i primi cinque caratteri casuali sono semplicemente irrimediabilmente compromessi e la rottura della password umana sembra approssimativamente simile alla rottura di un codice di sostituzione monoalfabetico, quindi non sembra troppo bello. Ma noterò questo:

Raccomandano inoltre di utilizzare questa scheda per una sola password e di cambiarla, se si perde la carta.

... e se segui le loro raccomandazioni, il compromesso del contenuto di una carta può compromettere solo la password umana fornita come input per quella carta. Dovremmo probabilmente aggiungere che non dovresti riutilizzare la stessa password umana con più carte.

18
Luis Casillas

Mi sembra poco pratico. Gli svantaggi (calcoli ingombranti, non è necessario perdere la carta, è necessario ricordare la password) superano i vantaggi (password complessa).

Non riesco a trovare un caso d'uso per questo schema:

  • Per gli utenti non salvati (tuo nonno), è molto più pratico scrivere la password in un taccuino conservato in un cassetto chiuso a chiave.

  • Per utenti esperti (lettori di questo blog), utilizzare meglio un'app di gestione password crittografata con una password principale.

5
dr_

hai un'entropia ridotta [...], ma finché la tua carta rimane sconosciuta, l'attaccante non può sfruttare questo fatto

Se la carta rimane sconosciuta, l'attaccante non può sfruttarla anche se ci si scrive la password completa. Questo, tuttavia, è un pessimo presupposto da fare, esattamente per lo stesso motivo per cui scrivere le password è male.

L'installazione di un gestore di password su un cellulare e l'utilizzo del telefono come cheatsheet di password ha molto più senso.

4
Dmitry Grigoryev

La mia ipotesi per principianti è che tu abbia un'entropia ridotta a causa di soli 8 caratteri diversi (+ 1 sequenza iniziale)

Non necessariamente.

Confrontiamo una password che utilizza caratteri dell'alfabeto inglese (in alto) e minuscoli. Una password di lunghezza n ha (2 * 26)**n valori possibili (e realisticamente molto meno di quello dato che probabilmente il pubblico di destinazione non avrà maiuscole e minuscole nel mezzo della password).

Nel frattempo, la password generata ha circa (8**n) * (66**5) valori possibili:

  • Ogni carattere nella password originale viene mappato su uno di 8 valori, n volte.
  • Hai dichiarato che ci sono 66 personaggi tra cui scegliere, ripetuti 5 volte.

Non ho un senso intuitivo di come 52**n rispetto a (8**n) * (94**5), quindi proviamo alcuni valori. Per una password di 8 caratteri (n= 8) otteniamo:

  • 53.459.728.531.456 (originale)
  • 21.010.654.131.388.416 ("Kryptonized")

La versione "Kryptonized" ha ordini di grandezza maggiori possibilità.

Per una password di 11 caratteri:

  • 7.516.865.509.350.965.248 (originale)
  • 10.757.454.915.270.868.992 ("Kryptonized")

Per una password di 12 caratteri:

  • 390.877.006.486.250.192.896 (originale)
  • 86.059.639.322.166.951.936 ("Kryptonized")

Quindi per le password di 11 caratteri o più brevi, la versione "Kryptonized" vince in termini di valori possibili. (Se assumiamo che la password originale utilizzi solo un singolo caso, la versione "Kryptonized" vince per password di 17 caratteri o più brevi.)

Si noti che non sto prendendo in considerazione il fatto che gli 8 possibili caratteri mappati sono presumibilmente casuali, ma non penso che importi davvero. Una cosa da imparare da questo è che aumentare la lunghezza della password è molto meglio che aumentare la dimensione del set di caratteri.

1
jamesdlin

Un buon schema di password non riguarda solo l'entropia. Tutta l'entropia nel mondo non ti proteggerà se riutilizzerai le password. Basta un sito per archiviare la password in chiaro.

Un buon schema deve anche scoraggiare il riutilizzo della password. In questo caso dipende da come viene utilizzata la carta.

Se un utente pensa "Ora ho una password super sicura" e riutilizza una password vulnerabile. Riutilizzare una password moderatamente buona è meglio che riutilizzare una password debole, ma non molto. Vedo questo come il modo più probabile che verrà utilizzato.

Vedo un utente intelligente che crea password univoche utilizzandolo per eseguire l'hashing di qualcosa sull'account, forse il nome del dominio. La loro password per google.com sarebbe 4uR=?FYY31xYY. Gli esperti di sicurezza denigrerebbero questo schema per numerosi motivi, e avrebbero ragione, ma produrrebbe una più ampia diversità di password più forti rispetto al resto. Tuttavia, non vedo che questo è un modo comune di usare la carta.

Poiché gli utenti della carta probabilmente riutilizzeranno una manciata di password, considero questo schema debole ma migliore di niente.


Uno schema migliorato (I Am Not A Security Expert) potrebbe essere quello di stampare un elenco di password complesse con uno spazio vuoto accanto a ciascuna. Quando un utente ha bisogno di un nuovo account, usa la password gratuita successiva e annota il nome di dominio e il nome utente, se non è il loro indirizzo e-mail. Ciò garantisce password complesse senza riutilizzo, purché non dispongano di troppi account.

Questo è, ovviamente, vulnerabile all'attacco fisico; rubare, copiare o fotografare la carta. Se la persona sta già scrivendo le proprie password o, peggio ancora, le hanno in un file, questo schema è un grande miglioramento. Mi viene in mente un numero di persone che ne trarrebbero beneficio.

È un compromesso. Considero il rischio di attacchi fisici e mirati molto più basso rispetto al riutilizzo e alle password deboli. È molto più probabile che tu abbia una password debole e riutilizzata inserita in un break-in casuale del sito rispetto a un attacco fisico.

E, naturalmente, tutto ciò è molto più debole rispetto all'utilizzo di un buon gestore di password.

0
Schwern