venerdì 3 dicembre 2010

L'importanza di una password


La scelta della password

Possiamo idealmente organizzare la gestione delle parole d'ordine in due grandi famiglie:
Una sola password per tutto È la scelta preferita dagli utenti incauti o alle prime armi. Una sola parola èestremamente comoda, poiché è facile da ricordare, non dobbiamo perdere tempo in scelte multiple e possiamo anche non scriverla. Il rovescio della medaglia è che se questa password cade nelle mani sbagliate l'assalitore avrà libero accesso a tutti i contesti che abbiamo protetto.
Una password diversa per ogni contesto È l'ideale di ogni amministratore di sistema e ha due grandi vantaggi: innanzitutto può essere difficile individuare per ogni specifica occasione e anche in caso una sola parola d'ordine fosse smarrita, tutti gli altri contesti rimarrebbero comunque al sicuro.
Come è facilmente intuibile però la cosa è idealmente perfetta, ma assolutamente inattuabile nella realtà: abbiamo bisogno di password mnemoniche, ricordabili, accessibili velocemente senza perdere tempo in ricerche.... e poi cosa succede se la lista viene smarrita o, peggio, cade nelle mani sbagliate?

Quale scegliere?

Quindi è meglio privilegiare la comodità di una sola password o la maggior sicurezza di una parola d'ordine sempre diversa? la soluzione è una via di mezzo fra le due tecniche, e cioè nel raggruppamento dei contesti in gruppi con la stessa password, diversa però dalla password di ogni altro gruppo.
Confusi? Vediamo di illustrare il concetto.

Attribuzione di importanza

Immaginiamo di dover gestire le password per i contesti di seguito indicati.
Posta elettronica aziendale
E-mail di casa
Iscrizione alla newsletter del nostro sito preferito
PIN del cellulare
Password per l'accesso al computer
PIN della banca
Dati di accesso ai servizi di e-Banking
Account al newsgroup
Dati per il servizio di fax via Internet
Password per l'accesso al server dell'azienda
La prima cosa da fare è un'attribuzione del livello di importanza di ogni elemento.
In pratica dobbiamo cercare di capire quanto è importante la password per ognuno di questi contesti: il modo più facile per farlo è chiederci "quanto sarebbe grave se qualcuno riuscisse a carpire questa password ed avesse pieno accesso al servizio?".
È chiaro quindi che attribuiremo una importanza "alta" ai dati di accesso al conto corrente, "bassa" per l'iscrizione alla newsletter e via dicendo:
Posta elettronica aziendale (alta)
E-mail di casa (bassa)
Iscrizione alla newsletter del nostro sito preferito (bassa)
PIN del cellulare (media)
Password per l'accesso al computer (media)
PIN della banca (alta)
Dati di accesso ai servizi di e-Banking (alta)
Account al newsgroup (bassa)
Dati per il servizio di fax via Internet (media)
Password per l'accesso al server dell'azienda (alta)

Raggruppamento per ambiente

Una prima idea potrebbe essere quella di scegliere due sole password, una per l'ambiente "personale" e uno per l'ambiente "lavoro".
Finiremo quindi per ottenere due liste indipendenti, con qualche vantaggio sicuramente notevole: ad esempio, un cracker che carpisse la password della posta elettronica aziendale tenterebbe inutilmente di usarla per accedere alla mailbox di casa (o viceversa), o ancora, in caso venisse rubata la password del server non sarebbe comunque possibile accedere ai servizi di e-Banking.
Questo primo metodo però ha il grosso svantaggio di esporre potenzialmente un intero set di servizi che dispongono di una correlazione estremamente forte: la contestualità.
Se ad esempio fosse un collega di lavoro a rubare la password, è statisticamente molto più probabile che egli sia interessato a muoversi nei servizi inerenti all'ambiente lavorativo, più che nel vostro privato. Ancora, stessa cosa se fosse un amico invitato a bere una birretta a sottrarre la password: difficilmente sarà interessato alla vostra vita professionale, ma sicuramente non perderà occasione per leggere qualche e-mail privata e spedire qualche messaggio "piccante" a vostro nome sul newsgroup preferito...

Raggruppamento per priorità

Potremmo allora pensare di scegliere tre password distinte: una per i contesti ad importanza alta, una per quelli a media e una terza per quelli a bassa importanza.
Questo potrebbe portare però a qualche errore di digitazione, e rendere necessari diversi tentativi di accesso: cosa succederebbe se per esempio ci sbagliassimo, e digitassimo la password per i contesti ad alta priorità in un servizio a "bassa"? Rischieremmo che il fornitore del servizio a bassa priorità si impadronisse anche della nostra password più importante...
E cosa succederebbe se un utente ostile riuscisse a carpire la password per l'accesso ai sevizi ad altra importanza? una catastrofe!

Raggruppamento per similarità

Una idea probabilmente più azzeccata è la suddivisione per similarità: con questa idea raggruppiamo i contesti per aree tematiche più o meno vaste, e non per ambienti o importanza: ad esempio
Servizi comunicazione: posta elettronica aziendale, e-mail di casa,
Computer: password per l'accesso al computer, password per l'accesso al server dell'azienda
Servizi Internet: iscrizione alla newsletter, account del newsgroup, Dati per il servizio di fax via Internet, Dati di accesso ai servizi di e-Banking
PIN: PIN della banca, PIN del cellulare
La forza di questo raggruppamento è che può essere difficile capire la logica con cui un singolo individuo ha scelto il raggruppamento: scelte alternative alla suddivisione proposta sarebbero potuti essere "Tempo libero" (con e-mail di casa e newsgroup) "Informazione" (con newsletter e password di accesso al computer) "Old economy" (con fax e PIN del cellulare) e via dicendo, secondo la libera interpretazione di ognuno.
Ovviamente la difficoltà in questo caso sta nel bilanciare raggruppamenti abbastanza fantasiosi e originali con la comodità di ricordare subito a qualche gruppo appartiene un certo servizio...
Non deve sembrare che raggruppando per similarità non sia necessaria l'attribuzione di importanza: anche in questo caso invece questa operazione è fondamentale, e ci aiuta a fare la media di ogni gruppo: in caso l'importanza di un gruppo risulti troppo alta rispetto alla media, è fondamentale ideare un'altra suddivisione, o spostare i servizi in altri gruppi, in modo da bilanciare.

Come NON scegliere la password

Ora che finalmente abbiamo ultimato le operazioni preliminari possiamo scegliere le password da adottare per ogni gruppo.
Prima di dare qualche regola su come scegliere una password, diamo qualche indicazione su quali parole d'ordine NON scegliere.
Evitate il vostro nome, cognome, indirizzo, data di nascita, animaletto domestico, figli o idoli del cinema: sono tutte scelte utilizzate troppo di frequente, e che possono essere indovinate in pochi tentativi.
Consiglio caldamente di evitare anche anagrammi e giochi di parole troppo complicati: sono più difficili da indovinare, ma anche estremamente facili da dimenticare.
Non pensate che password come "password" oppure "nonlaso" siano inimmaginabili: se ci abbiamo già pensato sia io che voi sono più che sicuro che ci sono altri milioni di individui che tenterebbero la stessa strada...
Potreste valutare di utilizzare come password qualcosa che avete davanti agli occhi tutti i giorni, come ad esempio la marca del monitor: per le stesse motivazioni viste al punto precedente la scelta non è del tutto sicura.
Evitate anche qualcosa che possa avere un pattern, ossia possa essere previsto: se ad esempio cambiate la password tutti i mesi, evitate di utilizzare cose come "il nome del mese precedente": in caso un cracker riuscisse a rubarvi la password la prima volta, ma non riuscisse ad utilizzarla perché voi la cambiate in anticipo, e riesca quindi a ripetere il furto una seconda volta, capirebbe il metodo e anche se riusciste ad invalidare la password in tempo, il mese successivo sareste fregati con facilità.

La scelta utopistica: una stringa casuale

I puristi della sicurezza raccomandano di scegliere la password come una stringa casuale composta di numeri e lettere. Sebbene questa sia la scelta assolutamente la più sicura, è chiaro che è anche la meno usabile: parliamoci chiaro, tutti noi vogliamo password che possiamo anche ricordare con facilità, e siamo disposti a sacrificarne un poco la robustezza per ottenere qualcosa di mnemonico!
Una password più sensata
La maggior parte di noi sceglierà però una password più mnemonica. Ecco quindi qualche raccomandazione.
Prendete una parola che non si trovi in alcun vocabolario, preferibilmente di nessuna lingua del mondo (ma sicuramente non italiano e non inglese). Se non avete molta fantasia, potete anche unire due parole, meglio se di lingue diverse.
Ad esempio, tempo fa avevo optato per la frasetta WIlBalloSmooth ("smooth" in inglese significa "liscio" e quindi "viva il ballo liscio": chi mi conosce sa che sono un appassionato di tutt'altro genere musicale, e già questo aiuta la sicurezza della password).
Non è sufficiente però: qualche attacco "a forza bruta" potrebbe ancora riuscire a carpire la password, avendo a disposizione qualche giorno per lavorare.
Una volta trovata una buona base di partenza, cioè una frasetta di almeno 8 caratteri, dobbiamo inserire almeno un carattere speciale, come @#-_; eccetera. Sconsiglio le lettere accentate, perché in caso doveste utilizzare la vostra password da una tastiera  non-italiana sarete tagliati fuori (a meno di operare qualche poco pratica modifica alle impostazioni del sistema).
Nel mio caso la scelta era ricaduta su 14 (il vecchio numero della mia maglia da giocatore) e relativo cancelletto. Quindi la password si è già evoluta in #14WIlBalloSmooth . Già difficile, ma per complicarla ulteriormente senza renderla troppo difficile da ricordare ho aggiunto il simbolo ; alla fine: ; è il terminatore di linea del linguaggio di programmazione C, per il quale non nutro particolare simpatia. Ecco quindi #14WIlBalloSmooth; .

Le verifiche del caso

Una volta scelta la nostra password, passiamo a fare le verifiche del caso, eseguendo il test noto come "Morris-Tomphson".
  • La password è più corta di 7 caratteri?
  • Contiene solo 7 caratteri alfabetici?
  • I caratteri sono tutti minuscoli?
  • È una qualsiasi parola di un dizionario di qualsiasi lingua (anche se scritta al contrario)?
  • È una data di nascita?
  • Non contiene neanche un carattere speciale?

Nessun commento:

Posta un commento