Hai provato ad accedere a Facebook, Instagram, LinkedIn, Amazon e ti è apparsa la scritta "nome utente e password errati?". Hai verificato e riprovato con le credenziali corrette e ancora non riesci ad accedere? Hai provato a fare recupera password e non ti è arrivata nessuna mail? Bene, vuol dire che il tuo profilo è stato hackerato. E a questo punto, come direbbero quelli fighi, dovresti dire: "Have i been pwned?" Per prima cosa, vorrei fare una precisazione legata al fatto che chiunque di noi, esperto o meno, se non presta la dovuta attenzione, può essere oggetto di furto di dati; quindi non sentitevi soli. La facilità di utilizzo dei device e di internet e la massima fiducia che nutriamo nei confronti dei giganti del web, ci sta spingendo sempre più a sottovalutare le misure di sicurezza da adottare; la poca conoscenza di alcune dinamiche invece ci porta a sottovalutare quale possa essere il reale impatto di un furto di dati o di un account. A livello tecnico, il furto di dati può avvenire sia in maniera diretta phishing, ad esempio riceviamo un messaggio, apriamo un link e inseriamo i nostri dati, oppure in maniera indiretta, attraverso i famosi data breach che colpiscono direttamente alla fonte il provider del servizio dove siamo registrati. Ambo le tipologie di attacchi stanno aumentando a dismisura, complice anche l'accelerazione alla digitalizzazione degli ultimi mesi e, soprattutto in Italia, una cronica carenza di competenze tecniche nel campo della sicurezza informatica.
Per verificare l'eventuale presenza dei nostri dati (mail o numero di telefono) in qualche data breach, basta farsi un giretto su questo sito e inserire quanto richiesto.
Di guide su come provare a recuperare il profilo o l'account, il web è pieno zeppo. Basta fare una piccola ricerca su google o fare riferimenti alle diverse pagine di assistenza. In questo articolo vorrei spiegare come provare a mantenere tutti i diversi accessi al sicuro, quali sono le principali opzioni di autenticazione, quali programmi uso e come funzionano.
Le basi della sicurezza informatica, lato utente comune, possono essere riassunte in 5 parti:
- Aggiornamenti: tenere sempre aggiornati all'ultima versione disponibile il sistema operativo di smartphone, tablet e computer e ovviamente tenere costantemente aggiornate tutte le applicazioni usate, sia quelle dello smartphone ma anche quelle dei computer
- Software: evitare di usare e installare software craccato; i crack o le patch di attivazione, sono quasi tutte di matrice russa e per essere eseguite richiedono sempre accessi da root/admin del vostro device. Lascio a voi fare 2+2. Il web è pieno di alternative open source altrettanto valide se non in alcuni casi anche migliori degli originali: Linux al posto di Windows, Gimp al posto di Photoshop, Darktable al posto di Lightroom, OpenOffice al posto di Microsoft Office, giusto per citarne alcuni. E nel caso di applicazioni mobile, evitare di utilizzare applicazioni poco note e/o di dubbia provienenza. Una volta installate, tutte le applicazioni chiedono accessi, sarebbe buona norma leggere cosa chiedono e capire se consentire accesso o meno al servizio
- Password: non utilizzare mai la stessa password, evitare di usare password brevi e facilmente rintracciabili (data di nascita, nascita del figlio, del cane, del gatto e via discorrendo). Usare sempre caratteri speciali e alfanumerici a combinazione randomica. Aggiornare le password ogni 90/180 giorni per avere una sicurezza molto elevata.
- Navigazione: evitare siti senza protocolli SSL, evitare i siti pirata e tutti quei siti dalla dubbia configurazione. Evitare di inserire qualsiasi tipologia di dato senza aver capito dove lo stiamo inserendo; evitare di cliccare su qualsiasi link ricevuto via mail o sms e soprattutto, prestare molta attenzione alla corrispondenza tra indirizzo digitato e indirizzo visualizzato
- Connessioni WiFi: impostare una password sicura per la vostra rete wifi e ovviamente una password sicura per il vostro modem (solitamente le password sono abbastanza basiche o del tutto assenti). Evitare di connettersi a qualsiasi WiFi pubblica per svolgere operazioni sensibili. Le reti pubbliche offrono zero protezioni e tutto il traffico può essere tranquillamente analizzato da qualcuno più esperto. Per lo stesso motivo diffidate dall'utilizzare qualsiasi tipologia di WiFi con password condivisa (tipo quella dei ristoranti/bar). Usate sempre una connessione di cui conoscete l'origine e le protezioni, possibilmente vostra.
Ma se le regole base potevano essere valide fino a qualche anno fa, oggi, con il moltiplicarsi degli account, del traffico in rete e di conseguenza dei tentativi di furto d'identità, queste operazioni da sole, non sono più sufficienti. Bisogna necessariamente affiancare anche una parte di protezione ulteriore, che ci consenta di gestire e monitorare la sicurezza di tutti i nostri account ed eventualmente intervenire in maniera tempestiva.
A livello tecnico, oggi esistono 3 modi diversi per accedere al nostro account di una determinata applicazione o servizio:
- Conoscenza: qualcosa che solo noi conosciamo o per meglio dire dovremmo conoscere (password, codice identificativo, pin)
- Possessso: qualcosa che solo noi possediamo (ad esempio smatphone o token)
- Inerenza: le nostre caratteristiche biometriche (iridi, impronte digitali, viso, timbro vocale)
Si parla di autenticazione a 2 fattori quando l'accesso è vincolato all'utilizzo di almeno 2 fattori tra quelli sopra elencati di matrice diversa: ad esempio password e token. Non viene considerata autenticazione a 2 fattori se si usano ad esempio 2 password, in quanto facenti parte della stessa matrice. Esiste anche l'autenticazione a 3 fattori, quando l'accesso è subordinato all'utilizzo di tutte le classi, anche se è molto meno usata, almeno per il momento.
Quasi tutti i siti e le app al giorno d'oggi offrono la possibilità di usare, in fase di accesso, l'autenticazione a 2 fattori. Le opzioni più comunemente offerte sono sostanzialmente 2: verifica con sms oppure verifica con Auth Code. Vi sconsiglio fortemente di usare la prima opzione, in quanto non propriamente sicura. La verifica con sms infatti può essere elusa in maniera abbastanza facile. Il fenomeno è noto come SIM SWAPPING e consiste in sostanza nella clonazione del nostro numero di telefono e in seguito alla deviazione del traffico in ingresso verso un altro numero. Potrebbe sembrare complicato nella pratica, nella teoria non lo è (basti pensare al recente data breach subito da HO Mobile). Il consiglio è quindi quello di scegliere sempre l'autenticazione a 2 fattori attravero app o auth code, così da evitare qualsiasi tipo di problema.
Per attivarla, dopo aver effettuato l'accesso, basterà andare nelle impostazioni dell'account (solitamente alla voce sicurezza e privacy) e vicino alla voce password, troverete anche l'opzione "attiva l'autenticazione a 2 fattori"; basterà poi seguire la procedure guidata e tenere a portata lo smartphone. Se non lo avete ancora fatto, fatelo, la sicurezza dei vostri account ve ne sarà grata. Da segnalare che non tutti hanno ancora attivato questa possibilità, ne sono incredibilmente sprovvisti ad esempio Netflix, Disney+ e Sky, giusto per citarne alcuni. Ma la speranza è che possa diventare a breve uno standard per tutti i siti.
La password costuisce la prima barriera di accesso a qualsiasi nostro account, smartphone e computer inclusi. Deve essere univoca per ogni canale e mezzo, deve contenere almeno 14 caratteri tra combinazioni di lettere maiuscole e minuscole, caratteri speciali, numeri e magari spazi. Si anche gli spazi sono caratteri e tra i più complicati da scoprire, in quanto appunto spazi. Generare e ovviamente ricordarsi a memoria tutte le password e tutte le varie combinazioni è praticamente quasi impossibile; scriverle su un quaderno o peggio ancora su un file di testo o di excel senza protezioni, è altamente sconsigliabile. Anche perchè con l'evoluzione hardware si è drasticamente ridotto il tempo necessario per decifrare le password in caso di attacco.
E quindi? Come fare a ricordare tutte le password? Come riuscire a generare password complesse e univoche tutte le volte? Da alcuni anni, sono stati sviluppati dei programmi, quali ad esempio Google Password, Apple Keychain, Samsung Pass, che svolgono tutto questo lavoro per noi: creare password sicure e ricordarci le stesse in fase di login, attraverso la comodissima funzionalità "autofill" o se preferite auto completamento. In quelli più evoluti, viene anche fatto un controllo di tutte le password al fine di segnalare password compromesse, password usate più di una volta, e password inefficaci.
Per quanto mi riguarda ho usato per anni Google Password, per conservare tutte le mie password (circa 1200 tra privato, lavoro e backup della famiglia) e averle sempre a portata di mano in qualsiasi device e sistema operativo. Tuttavia, l'aumento dei data breach e la necessità di avere un container separato per la loro gestione, in caso di furto o impossibilità di accesso all'account di Google, unitamente alll'aumento del numero di device utilizzato, mi ha spinto a cercare una soluzione alternativa, indipendente e con qualche funzionalità in più. Ed è così che sono venuto in contatto con Bitwarden.
Tra i vantaggi rispetto a tutti gli altri software disponibili, segnalo: è interamente open source, con codice pubblicato su GitHub ed una community a supporto pazzesca, le password vengono conservate sia in locale che in cloud, e soprattutto offre una profonda integrazione con qualsiasi sistema operativo e device (inclusi i blindatissimi pc aziendali). Completano il quadro una chat disponibile h24 e la massima sicurezza a livello crittografico (nessuno può accedere alle vostre password). Dopo 6 mesi di test approfonditi della versione gratis, sono passato a quella premium, direi che 10$/annui per la sicurezza dei miei dati è un prezzo super onesto da pagare; in pratica meno di caffè al mese.
Entrando nel dettaglio del suo utilizzo, in fase di registrazione viene richiesta una master password per poter poi accedere al container con tutti i nostri account. La master password dovrà necessariamente rispettare tutti i requisti di lunghezza imposti dal software e dovrà essere conservata in un luogo sicuro. Se si dovesse dimenticare non c'è nessun modo di recuperare la password, neanche piangendo in aramaico antico presso la loro assistenza. Quindi il consiglio è da una parte impararla a memoria (la pratica sicuramente aiuta) dall'altra salvarla in un posto sicuro (chiavetta criptata o similare). Una volta effettuata la registrazione e l'accesso, si accede al cuore del programma, il cosiddetto Vault. All'interno della nostra cassaforte sarà possibile importare tutte le password salvate in precedenza, da qualsiasi altro programma (Google Password, LastPass e via discorrendo). Una volta importato tutto il nostro dabatase password, se si ha la versione a pagamento, è possibile fare un controllo incrociato della sicurezza di tutti i nostri account e della presenza di nostri dati all'interno di tutto il web (pubblico e dark incluso) così da poter intervenire tempestivamente. La crittografia a 256-bit inoltre consente di poter memorizzare all'interno delle nostre casseforti anche file importanti, dati di carte di credito, documenti e tutto quanto in nostro possesso meritevole di elevata protezione. Per facilitare il suo utilizzp è possibile installare sia il client sul sistema operativo che l'estensione per i vari browser. Ovviamente il consiglio è quello di disattivare il salvataggio automatico offerto dai browser in favore di quello offerto da Bitwaden, sia lato desktop che lato mobile. Indipendentemente dal nostro accesso al pc/smartphone, la cassaforte andrà in blocco ogni 5 minuti, di conseguenza anche in caso di furto di pc o comunque di accesso non autorizzato, non sarà mai possibile accedere alle nostre password. È inoltre possibile organizzare accessi e password in comode cartelle, così da avere un maggiore controllo di tutto il nostro ecosistema dati o magari separare gli accessi personali da quelli lavorativi. Lato smartphone l'operazione di accesso è ovviamente semplificata dalla possibilità di entrare nell'applicazione utilizzando i metodi di sblocco classici (FaceID o Fingerprint). Ed ovviamente anche su Bitwarden è possibile impostare l'autenticazione a 2 fattori, per avere un ulteriore livello di sicurezza sugli accessi. Molto comoda è inoltre la funzione contatti di emergenza che ci consente di inserire persone fidate a cui concedere l'accesso alla nostra cassaforte (in sola lettura) in caso di necessità o emergenza. Utilissima la funzionalità Password History che ci aiuta a sapere quante volte abbiamo cambiato quella password, quando e ovviamente la cronologia delle ultime "vecchie" password usate. Personalmente lo ritengo il miglior gestore di password attualmente presente sul mercato per funzionalità, sicurezza e ovviamente supporto. Vi consiglio di provarlo, non ne potrete più fare a meno.
Per quanto riguarda il software per la generazione del codice randomico per autenticazione a 2 fattori, il mercato offre davvero tantissime possibilitè. Tutte gratuite e tutte con lo stesso medesimo funzionamento. Una volta abilitata l'autenticazione a 2 fattori e impostata l'applicazione, per poter accedere a tutti i nostri account ci verrà sempre richiesto questo codice a 6 cifre da inserire per confermare la nostra identità. Tra i generatori di token più utilizzati c'è sicuramente Google Authenticator. Anche io l'ho usato in passato, ma poi, ho notato una cosa abbastanza particolare. Non è possibile effettuare un backup complessivo dei nostri dati e non è possibile avere un doppio accesso di sicurezza. O per meglio dire, si possono esportare tutti i codici salvati, ma bisogna farlo su un altro smartphone. Di fatto se perdiamo il telefono in cui abbiamo installato l'applicazione, dovremo resettare il tutto, non solo lato Google ma anche su tutti i diversi servizi usati. Ed è esattamente per questo motivo che ho deciso di passare ad Authy. Tra i vantaggi, ben illustrati e raccontati anche su loro sito, ci sono: il supporto al multi-device (sia mobile che desktop), la possibilità di creare dei backup crittografati di tutti i nostri token (così da poterli ripristinare in qualsiasi momento e su qualsiasi device) e in ultimo i 3 livelli di autenticazione offerti (OTP, Soft Token e Push Authentication). Ovviamente l'applicazione è completamente gratuita e da circa 6 mesi offre anche una versione beta per quasi tutte le distro Linux. Insomma è praticamente perfetto.
Una volta installata l'applicazione ed effettuata la prima registrazione (tra i metodi di verifica per il primo accesso vi sconsiglio la verifica via sms a favore di una più sicura verifica via WhatsApp) non resta che iniziare ad impostare i diversi token per tutti i servizi dove vogliamo attivare l'autenticazione a 2 fattori. Il consiglio è di attivarla su tutti i servizi dove è supportato, onde evitare qualsiasi problema. La procedura di attivazione in se è molto semplice. Basta avere a disposizione un pc e uno smartphone. Con il pc entrare nel sito, ad esempio Gmail o Facebook, andare all'interno delle impostazioni di privacy e sicurezza e selezionare Attiva autenticazioni a 2 fattori; in automatico sullo schermo apparirtà un qr code. A questo punto, aprire Authy sullo smarphone, cliccare su Add a new login e inquadrare il QR code presente sullo schermo. In questo modo andremo ad associare la generazione del token di login all'applicazione Authy. Ed il gioco è fatto. Da questo momento, ogni volta che proverete ad effettuare il login vi verrà sempre chiesto, oltre al nome utente e password, anche un token a 6 cifre. Ora non vi resta che ripetere la procedura su tutti i siti di vostro uso. A partire dal primo account aggiunto, Authy vi chiederà in automatico di creare una master password per il backup criptato. Ovviamente creatale con Bitwarden e soprattutto ricordate che nessuno di Authy potrà mai fornirvi in nessun modo questa password. Se la doveste perdere, addio backup.
Quando descritto sopra è il mio modo per rendere i miei account e i miei dati più sicuri e gli accessi più controllati. Il concetto di base che solitamente applico e provo a far applicare anche ai miei familiari/amici è legato a 2 variabili fondamentali, per chiunque voglia provare ad hackerare un mio account: tempo e denaro. Tanto più rendo complicata una cosa quanto più l'eventuale hacker sceglierà una preda più facile e più economica (in termini di dispendio di energie e appunto tempo). Ovviamente, avere password sicure e autenticazione a 2 fattori attive non mi rende invulnerabile ma sicuramente mi consente di avere più controllo sugli accessi. Specialmente nel caso di accessi condivisi (ad esempio Amazon) dove non posso avere garanzia sulla sicurezza del device da dove viene effettuato l'accesso (presenza di keylogger, trojan e via discorrendo) e non posso avere certezza della sicurezza della rete stessa. L'autenticazione a 2 fattori mi consente sempre di essere l'ultimo baluardo: se non fornisco il token l'accesso viene respinto. Questo mi da il tempo di capire se l'accesso proviene da qualche fonte sicura (mio padre, mio fratello...) oppure è di origine ignota e quindi sospetta. E di conseguenza attivarmi per cambiare password, verificare tutti i dispostivi connessi e via discorrendo. Avere inoltre dei container separati per credenziali e token, mi garantisce inoltre maggiore sicurezza: anche per accedere al Vault delle password è necessaria l'autenticazione a 2 fattori. Avere backup e possibilità di recuperare tutto anche da altri device sicuri, mi consente di stare sereno anche nel caso in cui un qualsiasi dei miei device dovesse andare perso. Non sono ancora del tutto soddisfatto dei miei livelli di sicurezza e delle protezioni messe in atto e quindi ho deciso di acquistare anche una coppia di YubiKey. Ma questa è un'altra storia, o per meglio dire un altro articolo.