Sradicare il concetto di password sicura.

Nel precedente articolo ho iniziato a spiegare perché nel corso di quest’anno dovremo necessariamente rivedere i concetti di sicurezza informatica che conosciamo e, molto probabilmente, saremo costretti a stravolgere delle convinzioni sull’argomento che ci accompagnano da anni.

La sicurezza informatica assoluta non esiste più e, anzi, forse non è mai esistita davvero. Un tempo, un’epoca in cui il telefono doveva ancora essere attaccato ad una presa a muro per funzionare, il computer era una specie di isola felicemente disconnessa: i dati viaggiavano amabilmente e fisicamente su floppy disk e le principali preoccupazioni erano che quel floppy non si smagnetizzasse e che non andasse smarrito durante il trasferimento da un luogo all’altro. I centri di elaborazioni dati sfruttavano reti ancora inaccessibili dall’esterno e per violarle bisognava innanzi tutto dotarsi delle infrastrutture adeguate, pertanto il furto di informazioni elettroniche richiedeva veri e propri sforzi umani ed economici. Paradossalmente, lo stesso tipo di furto è divenuto semplice in modo direttamente proporzionale alla diffusione delle interconnessioni e delle tecnologie informatiche in generale, tanto che oggi non servirebbe nemmeno un PC fisso ma basterebbe persino uno smartphone o un tablet per tentare di accedere ai dati digitali altrui.

I principali responsabili della sottrazione di dati siamo noi stessi, purtroppo. Il crescente numero di dati digitali ha fatto piombare su tutti noi l’esigenza di avere a disposizione spazi di archiviazione sempre più grandi e, quindi, l’hard disk da 250 GB del nostro PC di alcuni fa si satura in tempi sempre più rapidi e ci costringe a quelle noiosissime sessioni di revisione e selezione dei contenuti da salvare o da mantenere. A quel punto siamo davanti al bivio: compro un hard disk più capace (almeno 750 GB) o mi affido ad un cloud storage (anche a pagamento, pur di avere spazio)? Ultimamente ci stiamo orientando verso la seconda soluzione, dato che anche un hard disk da 1 TB (terabyte) si saturerà in tempi sempre più brevi e avremo sempre l’assillo del backup per prevenire eventuali guasti al disco, mentre nel caso del cloud storage, pur con eguale capacità di memorizzazione, non dovremo preoccuparci della manutenzione del supporto e, in più, potremo accedere a quei dati anche da altri dispositivi.

Ecco: ora rileggete l’ultima frase sottolineata e meditate.

Nel momento in cui il dato digitale si allontana fisicamente da noi, automaticamente cresce la possibilità che quello possa essere violato, intercettato, sottratto o manomesso da soggetti non autorizzati. Attenzione, però: ribadisco che il primo responsabile per la sottrazione di files da un cloud storage non è il gestore del servizio ma l’utente dello stesso.

Il cloud storage ideale trasmette i dati a server dotati di crittografia sul filesystem e attraverso connessioni Internet sicure; se poi quello stesso servizio usa la cifratura dei files locale prima del trasferimento e tecniche di sicurezza “zero knowledge” (cioè il servizio non memorizza alcuna password né altre informazioni indicate dall’utente), si potrebbe bel parlare di un servizio cloud storage a sicurezza rafforzata (come SpiderOak). Dove sorge la responsabilità dell’utente, allora? Essa sorge nel momento in cui Mario Rossi sceglie la password per il proprio account nel servizio cloud storage che ha deciso di usare.

La rapidità d’azione che il moderno ritmo di lavoro (e di vita) ci chiede, ci spinge ad usare password facili da ricordare e dall’inserimento quasi immediato, tanto che nel 2016 le 25 password più utilizzate sono raccolte in questa lista. Inutile persino dire che “123456” è la password più usata, nonostante sia l’emblema della password debole ma anche “qwertyuiop” e “zxcvbnm” fanno la loro (pessima) figura; tuttavia anche le cosiddette “password sicure” non se la passano bene.

I casi di sottrazioni di file personali giunti persino all’onore delle cronache (l’evento noto come “The Fappening” o la divulgazione delle foto intime di Diletta Leotta) spesso sono erroneamente riportati come “smartphone delle celebrità hackerati“; in realtà, nella maggior parte dei casi, la sottrazione non è avvenuta direttamente dal telefono della tal celebrità ma da un account di cloud storage del quale sono state carpite le credenziali d’accesso in qualsiasi modo (nel caso di “The Fappening”, il malintenzionato ha adottato tecniche di phishing). Anche usando la password “W#1_TyU9@10jXbQa2P4“, una volta entrati in possesso di questa e dello username associato (nel 90% dei casi: un semplice indirizzo e-mail), l’accesso ad un account diviene immediato e non può essere impedito o annullato in tempi rapidissimi – non a caso sarebbe opportuno, come già fanno alcuni servizi online, l’invio di un messaggio (SMS o e-mail) all’utente ad ogni accesso effettuato al suo account; purtroppo, però, molti servizi online preferiscono mantenere l’utente loggato costantemente fra una sessione e l’altra, sacrificando la sicurezza sull’altare della comodità.

Lo scenario è questo, quindi:

  • un malintenzionato conosce lo username del cloud storage che usiamo;
  • conosce anche la password che reputavamo difficilissima;
  • è entrato nel nostro account e non l’abbiamo saputo immediatamente.

Quando riusciremo a sapere della violazione, i dati che conserviamo sono già stati abbondantemente copiati da chi non era autorizzato.

Come difendersi?

La difesa è fare una buona prevenzione del rischio e la prevenzione inizia da un cambio di atteggiamento nei confronti dei servizi online e delle password che usiamo. Nel 2017 dobbiamo convincerci che la password sicura non esiste. Una password è tanto sicura quanto più resta segreta e mantenere segreta una password significa adottare precauzioni fuori dal comune, soprattutto quando dobbiamo pensare a come custodire quelle credenziali. Pertanto, se ci troviamo in uno spazio di lavoro condiviso con altre persone, iniziamo staccando dal monitor il post-it con la password.

Foto reale, non creata apposta per l’articolo.

E togliete i post-it pure dai fondi dei cassetti (sì, caro cancelliere di un tribunale che conosco, dico a te) o da sotto i piani di scrittura delle scrivanie. Una password (o un PIN) è va custodita gelosamente, fino al punto di mandarla a memoria e distruggere post-it, fogli, e-mail e quant’altro riporti quella sequenza di caratteri e numeri che dovrebbe porsi a difesa del nostro lavoro, dei ricordi privati e di ciò che non vogliamo che sia di pubblico dominio. Quando una password viene carpita, scoperta o forzata, resta ben poco da fare e tutti i discorsi riguardanti la complessità delle password vanno pacificamente a farsi benedire. Il soggetto malintenzionato in possesso di credenziali d’accesso è come il ladro che ha in mano le chiavi della casa da derubare: aperta la porta, qualsiasi oggetto è a sua totale e completa disposizione.

Attenzione, però! Non scoraggiamoci davanti a quest’ipotesi tutt’altro che remota. Come accennato all’inizio di quest’articolo, dobbiamo cambiare l’approccio mentale alla protezione dei nostri dati digitali. Mettiamo definitivamente da parte l’idea che possiamo dormire sonni tranquilli se affidiamo i nostri documenti ad un servizio che offra cifratura, connessioni sicure, tecniche anti-intrusione e roba simile; giusto per rendere ancora più semplice il discorso: l’intrusione si ha nel momento in cui qualcuno tenta di accedere al servizio senza averne l’autorizzazione (ossia: le credenziali d’accesso, username e password); se, però, qualcuno entra in possesso delle credenziali, allora non può più parlarsi di “violazione” dell’account, poiché costui avrà usato lo username e la password del legittimo titolare quindi, più correttamente, si dovrebbe parlare di “furto d’identità” o di “furto di credenziali d’accesso”. Il paragone con le chiavi di casa è assolutamente calzante e una password andrebbe custodita esattamente come custodiamo quelle chiavi di casa. Quel che dobbiamo imparare oggi è che l’ipotesi che qualcuno acceda ai nostri dati è tutt’altro che remota, pertanto, dovremmo far sì che l’intruso dopo l’accesso si ritrovi davanti un ambiente pressoché vuoto e con materiali pressoché inutilizzabili. Qui entra in gioco la crittografia dei files.

Facciamo un esempio pratico: Mario Rossi ha l’abitudine di crittografare i suoi documenti prima di salvare nel cloud storage del quale è cliente premium (con abbonamento, perciò, e con alta capacità di memorizzazione). Ogni file caricato dal Rossi è protetto con un algoritmo forte e per poterlo usare, egli ogni volta dovrà decifrarlo usando l’applicazione XYZ, già usata per la cifratura. Certo è una scocciatura ma il vantaggio è innegabile. I files cifrati presenti nel cloud storage di Rossi presentano un margine di sicurezza superiore poiché nel momento in cui l’intruso, Luca Bianchi, entra in possesso delle credenziali d’accesso, costui può accedere allo storage ma davanti si ritroverà una spiacevole sorpresa: i files sono tutti cifrati e, quand’anche riconoscesse l’applicazione usata dal Rossi, dovrebbe cimentarsi in diversi tentativi di decifratura e con conseguenti notevoli perdite di tempo. Salvo che non si tratti di un “furto su commissione“, il gioco non vale la candela e il Bianchi si ritrova con un pugno di file totalmente inutili e per i quali non vale la pena perdere ulteriore tempo.

Ecco un primo valido insegnamento, quindi: impariamo a rendere inutile il lavoro di chi viola i nostri account.

Impegniamoci a fortificare la protezione di ogni singolo file.

Utilizziamo la crittografia per creare piccole casseforti che possiamo pacificamente salvare ovunque vogliamo, senza essere continuamente assillati dal timore che “qualcuno potrebbe accedere e rubare i files“.

Convinciamoci anche che, nella malaugurata ipotesi del furto di files, colui che se n’è impossessato poi si ritroverà con file cifrati non utilizzabili immediatamente e che richiedono una certa esperienza per essere craccati.

Non fidiamoci più delle autenticazioni a doppio passo (2FA): il NIST, l’ente americano che si occupa di standard e tecnologia, un’autorità anche nel campo della sicurezza informatica e della crittografia, già dalla metà del 2016 ha dichiarato inaffidabile il metodo di autenticazione che prevede l’inserimento di una password e la conferma con un codice ricevuto via SMS (come fa Google, per dirne uno). Il problema risiede in un bug nel protocollo SS7 che governa il servizio SMS, a causa del quale si potrebbe intercettare il codice impersonando il reale destinatario del messaggio con il codice di conferma. Se non avete attivato la verifica a doppio passo, non perdete tempo con la sua attivazione; se l’avete già attivata, mantenetela perché male fa nonostante non si possa più ritenere sinonimo di sicurezza.

Ove possibile, attivate metodi di autenticazione basati su scansioni biometriche quali i sensori d’impronta digitale o la scansione dell’iride – da non confondersi con il semplice riconoscimento del viso che è un metodo di cui si è dimostrata più volte l’inaffidabilità.

Abbandoniamo le password e utilizziamo le passphrase (ossia un intera frase comprendente spazi e punteggiatura) per cifrare i files, giacché queste sembrano coniugare solidità e facilità di memorizzazione. Vi sono diversi studi, infatti, che mirano ad individuare il miglior metodo per creare una password semplice da ricordare ma molto resistente ai tentativi di violazione – giova ricordarlo, violare (craccare) una password è cosa ben diversa dall’entrarne in possesso.

Senza ricordare qui le caratteristiche che dovrebbe avere una password sicura, da circa una decina di anni si sta valutando (come anticipato) la solidità delle passphrase: va da sé, infatti, che una frase è ovviamente più lunga di una password ma ciò che non è immediatamente evidente, è che una frase è composta da più parole e, ciascuna di queste, ben potrebbe essere usata come una password individuale. Dunque, una passphrase va pensata come una combinazione di password eventualmente intervallate da spazi o simboli. Gli esempi pratici rendono meglio l’idea.

Il sito howsecureismypassword.net ci permette di verificare quanto tempo servirebbe per craccare una password o una passphrase – nota: esistono tanti siti del genere ma questo implementa un algoritmo di verifica che non penalizza le passphrase come, al contrario, fanno altri siti poiché attribuiscono punteggi negativi alle ripetizioni di lettere o all’eccessiva lunghezza della password.

Il primo test è stato condotto una password semplicissima: pippo2017. Si tratta di una password che rispetta solo parzialmente i canoni della password sicura e il risultato è nel video e parla da sé. Proviamo a modificare la password trasformandola in Pippo-2017.

Osserviamo che la situazione inizia già a migliorare, però quanto potrebbe richiedere il cracking della passphrase “Nel mezzo del cammin di nostra vita“?

Sbalorditi? Bene, però ricordate che:

  1. il test condotto è ben lontano dall’utilizzare un metodo scientifico validato ma ha solo scopo formativo;
  2. ogni algoritmo per la valutazione di una password ha le sue lacune e molto dipende dalla filosofia cui si è ispirato lo sviluppatore.

Sì, filosofia perché non esiste uno standard che definisca una password più solida di una passphrase o viceversa. Un articolo del blog di DropBox del 2012 lo spiega bene e spiega anche perché il loro algoritmo “zxcvbn” (guardate un momento la vostra tastiera: sono le prime sei lettere della terza fila di tasti) funziona in maniera diametralmente opposta rispetto ad altri algoritmi simili. La loro filosofia (appunto) consiste nel premiare le passphrase e nel penalizzare le password, anche nel caso in cui queste soddisfino i requisiti canonici; alla base di zxcvbn vi è il calcolo dell’entropia di una password (o di una passphrase) cioè del numero di volte che uno spazio di possibili password può essere diviso a metà. Lasciando i dettagli squisitamente tecnici al post che ho citato, basti sapere che si tratta di un algoritmo che effettua un vero e proprio calcolo matematico, e non si limita semplicemente a verificare che la password inserita risponda ai requisiti canonici. Pertanto, secondo la filosofia di DropBox, è più opportuno utilizzare una frase composta da più parole di senso compiuto piuttosto che una sequenza astrusa di caratteri, numeri e simboli, poi estremamente difficile da ricordare.

L’approccio di DropBox sembra richiamare il metodo “DiceWare” per la generazione di una passphrase. Si tratta di un metodo particolare che prevede l’impiego di cinque dadi e una lista di parole di senso compiuto, ciascuna delle quali è associata ad un numero di cinque cifre da 1 a 6 (es.: 54221); si lanciano i dadi, si annotano le cifre ottenute da ciascun dado, si cerca la parola corrispondente alla sequenza nella lista, la si annota e si parte con un nuovo lancio di dadi (almeno per altre quattro volte e fino a selezionare almeno cinque parole dalla lista). Alla fine si otterrà una passphrase composta da cinque parole di senso compiuto e intervallate da spazi o trattini o altri simboli.

L’approccio “DiceWare” si caratterizza per l’uso di parole di senso compiuto, una caratteristica negativa delle password considerate deboli fino ad oggi. Sostenere che una parola significativa non potesse costituire una valida password, era concetto derivato dalla conoscenza di certi tipi di attacco che si basavano sull’uso di dizionari, liste di parole ritenute abbastanza comuni e che consentivano di risalire alla password reale in tempi rapidissimi. Anche in questo settore, però, vi è stata una certa forma di evoluzione: i dizionari si sono arricchiti (e gli algoritmi per il cracking adeguati di conseguenza) con serie di password rispondenti a determinati pattern. Per esempio, è ben noto che qualcuno potrebbe trasformare la password “pippo2017” con la tecnica del leet speech, sostituendo alle vocali il numero più simile (“pippo2017” > “p1pp02017”); un tempo questo tipo di password veniva considerato un po’ più sicuro perché si procedeva all’alterazione del senso compiuto della parola e si mettevano in crisi gli algoritmi per l’esecuzione di attacchi basati su dizionario. Oggi, invece, anche la password scritte in questo modo non sono più sicure:

Il risultato non cambia: pippo2017 e p1pp02017 sono deboli in maniera identica.

Il metodo DiceWare, invece, ragiona al contrario: se è facile attaccare una password composta da una parola di senso compiuto, non può dirsi altrettanto per una frase composta da più parole di senso compiuto. Servirebbe un dizionario in grado di contemplare tutte le possibili combinazioni di parole, simboli, numeri e spazi esistenti nel lessico umano. L’esempio seguente mostra la generazione di una passphrase basata su DiceWare attraverso il sito generatore Hidester. Qui troviamo una pagina (in inglese) con una completa spiegazione del metodo DiceWare e del perché questo debba realmente ritenersi sicuro rispetto ad altre soluzioni; nella stessa pagina, in alto, c’è un tasto che genera automaticamente la passphrase estrapolando le parole dalla lista Diceware in lingua inglese (esiste anche la lista italiana curata da Tarin Gamberini) e unendole con simboli o spazi. Genereremo una passphrase e la copieremo nel sito misuratore per vedere quanto è solida la combinazione.

La solidità delle passphrase DiceWare è impressionante e, ad oggi, non sono noti eventuali attacchi contro questo tipo di protezione; se tutti iniziassimo ad adottare questi approcci più moderni (soprattutto in ambito aziendale o professionale), il numero di attacchi diminuirebbe sensibilmente e non ci si presenterebbe un anno come il 2016, anno denso di attacchi e incidenti informatici che è stato perfettamente riassunto nella seguente infografica, relativa al solo primo semestre (fonte: Gemalto).

In attesa che siano pubblicati i dati per il secondo semestre 2016 (forse peggiore del primo), vi rimando al prossimo articolo per addentrarci un po’ nel fantastico mondo della crittografia applicata alle attività quotidiane.

Matteo L. Riso

Avvocato del Foro di Reggio Calabria, studioso di diritto dell'informatica e delle nuove tecnologie; geek, programmatore, opinionista. Qualcuno sostiene che si tratti di una personalità complessa.

Potrebbero interessarti anche...