Account Recovery

Quando ho cominciato ad usare internet non avevo idea dell'importanza di una corretta gestione degli account personali, dunque ho fatto gli stessi identici errori di cui ho già parlato negli altri articoli in questa "serie".

Dunque oggi voglio riprendere il discorso che stavo facendo in Account Management, dal punto di vista di qualcuno che ha già fatto questi errori e vuole correggerli.

Da dove partiamo?🔗

Una cosa molto curiosa: su internet la creazione di nuovi account è quasi banale. Ma a meno che non abbiate sempre usato un gestore di password (o carta e penna, suppongo), non esiste un modo che vi permetta di avere correttamente una lista completa di account legati ad una e-mail che vi appartiene.

Partiamo quindi da qui: fate una lista di tutti gli account e-mail che sapete con certezza essere vostri attualmente. Quando avete questa lista, ci sono tre modi in cui potete controllare quali account sono legati a queste e-mail:

Have I been Pwned?🔗

"Have I Been Pwned?" è uno strumento che vi consente di vedere se il vostro account e-mail o la vostra password sono stati compromessi. È uno strumento utile in generale, ma è specialmente utile per i nostri scopi, perché se inserite al suo interno una vostra e-mail, e questa e-mail è stata trovata in uno o più data breach, potrete vedere con certezza a quali siti vi siete registrati con quella e-mail: ovvero quelli oggetto del data breach.

Il sito è in piedi dal 2013 e il proprietario è Troy Hunt. Ci sono vari meccanismi messi su per fare in modo che il sito sia sicuro, come la k-anonimity che vi permettono di usare il sito senza rendervi identificabili.

Tenete presente che il fatto che il sito vi dica che un certo account non è stato oggetto di un data breach, non vuol dire che non sia mai stato compromesso. Usando le parole di Troy Hunt: L'assenza di evidenza non è evidenza di assenza (di compromissione, in questo caso).

Controlla l'e-mail🔗

L'altro modo più "ortodosso" di controllare a quali siti vi siete iscritti è quello di controllare le vostre e-mail passate. Questo naturalmente funziona finché archiviate le vostre e-mail in qualche modo, altrimenti è piuttosto inutile. Ad esempio, potete cercare stringhe come: "È stato creato il tuo indirizzo Gmail" (l'ho trovato in una mail del 2012) o cercare codici di verifica a due passaggi. Se sono nella vostra e-mail andate al sito da cui provengono e il gioco è fatto.

Sito per sito🔗

Questo metodo non è tanto efficiente, perché non mi aspetto che riusciate a ricordare tutti i siti su cui vi siete mai registrati, ma se vi interessano quelli più importanti, questa tecnica è comunque valida.

Recupero degli account🔗

Il flusso del recupero di un account è più o meno sempre lo stesso per il 90% dei vostri account:

  1. "Ho dimenticato la password"
  2. Inserisci la tua e-mail nella casella di testo
  3. Il sito in questione ti invia una mail con un link che ti permette di resettare la password.

Ci sono giusto un paio di cose da tenere in considerazione in questo processo.

Da dove recuperiamo l'account?🔗

Il mezzo che usate per il recupero di un vostro account può fare la differenza tra un account recuperato con successo e uno perso completamente. Dal momento in cui la società è passata dal computer come mezzo principale per accedere al mondo digitale allo smartphone, molte aziende dietro questi prodotti digitali hanno adeguato alcune misure di sicurezza. Suppongo che la ratio sia stata che quando il 90% degli utenti utilizzano uno smartphone per interagire con il tuo prodotto, il restante 10% è quanto meno sospetto.

Se l'accesso da un computer è più sospetto, ha senso mantenere delle misure di sicurezza più stringenti su queste piattaforme rispetto alla versione per smartphone. Tant'è che da computer mi è stato chiesta conferma tramite un numero di telefono, da smartphone no. Questo in due occasioni separate.

A recupero effettuato...🔗

Fatto? Bene, ora segnate le nuove credenziali nel vostro gestore di password e abbiate cura (se il sito ve lo permette) di attivare la verifica in due passaggi e le passkey.

Verifica in due passaggi🔗

Da un po' di anni i meccanismi di sicurezza per proteggere gli account sono diventati un po' più sofisticati. La verifica in due passaggi, generalmente consiste nel richiedervi un'ulteriore informazione, oltre ad username e password.

Questo è importante perché vi dà la garanzia che anche nel caso in cui qualcuno abbia accesso alla vostra e-mail e password non può automaticamente compromettere un account che vi appartiene: per poter avere accesso all'account serve anche un OTP che è un codice numerico, generalmente di 6 cifre basato sul tempo (data e ora). Questi codici cambiano continuamente (generalmente ogni 30 secondi) e vengono derivati da un "secret", una stringa di caratteri random unica per il vostro account.

Ci sono dei suggerimenti importanti che bisogna tenere presente quando si usano gli OTP:

1. Evitate quanto più possibile OTP via SMS e/o e-mail🔗

Alcuni ISP si offrono di fornirvi solamente il codice OTP (invece che il "secret" necessario per generarli) e solamente via SMS/E-mail. Il mio consiglio è di evitare questo metodo a tutti i costi. Il motivo è che gli SMS e le e-mail sono profondamente e inerentemente insicuri, oltre al fatto che le loro informazioni sono trasmesse in chiaro.

Specialmente nel caso delle e-mail: Alcuni siti si offrono di autenticarvi mandandovi un OTP via e-mail, senza che dobbiate fornire una password per accedere all'account. Questo è un problema perché nel momento in cui il vostro account e-mail viene compromesso, l'attaccante ha accesso diretto anche a questi siti.

Nel caso degli SMS esiste un processo con cui l'attaccante può ottenere accesso alla vostra SIM tramite "SIM Swapping".

2. Corollario: evitate gli OTP basati su applicazione🔗

Qualche altro ISP si offre di mandarvi un OTP (di nuovo, non il "secret" necessario a generarli) tramite una loro applicazione che voi dovete installare sul vostro dispositivo. Questo meccanismo è un po' meno peggio del precedente, perché quanto meno il vostro OTP viene trasmesso in sicurezza (in teoria, ma dipende da come è stata fatta l'app).

La parte negativa di questo meccanismo è che non vi fornise alcun controllo sull'OTP, solo una falsa sensazione di controllo. Perché? Per la Terza legge della termodinamica. Perché sebbene ci piaccia pensare che il nostro dispositivo rimarrà sempre con noi, il più delle volte non è così.

È facile perderlo, distruggerlo o distruggere i dati contenuti al suo interno. E siccome spesso non è possibile fare un backup comprensivo delle applicazioni (e anche quando è possibile, non è possibile farlo in una maniera che ve ne fornisca il controllo), quell'OTP è praticamente inutile fin da subito.

Senza contare che quando installate l'applicazione, avete un'ulteriore componente che può accedere piuttosto facilmente a molte informazioni sul vostro dispositivo che preferireste mantenere private. Parlando per android: i permessi sui sensori di sistema meno esposti (come l'accelerometro) è garantito di default alle applicazioni installate, così come l'accesso ad internet e l'accesso alle altre applicazioni installate nel vostro profilo.

Tutto questo quando è tecnicamente possibile darvi una stringa segreta che potete dare in pasto al vostro gestore di password e fare in modo che sia lui a gestire le cose in sicurezza.

Passkey🔗

Le Passkey sono il meccanismo più avanzato che abbiamo correntemente. È basato sullo standard FIDO2/WebAuthn che generalmente prevedeva che l'utente avesse con sè una chiavetta USB/NFC per autenticarsi con il sito. In questo modo, per autenticare l'utente il sito ha bisogno di due informazioni: Una cosa che l'utente conosce (la sua password) e una cosa che l'utente possiede fisicamente (la chiavetta FIDO2).

Le Passkeys fanno esattamente questa cosa, perché sui telefoni più moderni è presente un chip, noto come "Secure Element" che è in grado di svolgere le operazioni di crittografia complesse (richieste dalle passkeys) in sicurezza. In questo modo è il telefono stesso l'oggetto che dimostra al sito che l'utente è chi dice di essere. La maggior parte dei gestori di password supportano le passkeys: potete lasciare che siano loro a memorizzarle al posto vostro, per poi portarvele con voi dovunque andiate.

Quale e-mail?🔗

Un suggerimento importantissimo che posso darvi è di usare come vostra e-mail principale (e quindi: eventuale e-mail "di recupero") una e-mail di cui avete il controllo sul nome di dominio. Ve la faccio semplice: Se usate come e-mail principale una mail con Google/Apple/Yahoo/Microsoft, non avete voi il controllo sul nome del dominio, ma ce l'ha questa azienda.

Io sono stato troppo zelante nel cancellare un mio account google, che fino al 2016 circa ho utilizzato come "principale" e automaticamente sono rimasto tagliato fuori da tanti altri account che avevo ancora in giro con l'e-mail di quell'account google. Grazie a mio padre il mio primissimo account e-mail era un account legato ad un dominio personalizzato. Per qualche anno questo dominio non è più stato utilizzato e poi lo abbiamo ri-preso qualche anno fa. Questo mi ha permesso qualche settimana fa di riuscire a recuperare una sfilza di account internet a cui era ancora legata la mia primissima e-mail.

Questo non vale per google, perché una volta che cancellate il vostro account, non potrete mai più avere accesso alla relativa e-mail. Né voi, né nessun altro. Che di base è un bene ed è una scelta sensata. Ma siamo umani e tutti possiamo sbagliare.

Corollario: Se avete delle e-mail in piattaforme che non controllate in prima persona, piuttosto che chiudere l'account, mettetelo in sicurezza con gli OTP e le passkeys e lasciatelo a sé stesso. In questo modo rendete molto difficile che venga compromesso e se mai dovesse servirvi nuovamente ce lo avrete sempre a disposizione. Abbiate cura di mantenere questi account "attivi" di tanto in tanto (mandare una mail potrebbe bastare). Molti ISP hanno cominciato a mettere in atto delle politiche di chiusura/rimozione automatica se non vedono "attività" in un certo lasso di tempo. Qui la polititca per gli account google non utilizzati.

Nota sul SSO🔗

Evitate di usare il SSO. Alcuni ISP si offrono di essere loro stessi a gestire l'autenticazione verso altri siti internet. Li avrete sicuramente visti ogni volta in cui un sito vi chiede "Entra con Google", "Entra con Facebook", etc.

Nonostante questo meccanismo sia sicuro (a patto che abbiate delle buone pratiche di sicurezza sull'account da cui vi autenticate), vi sconsiglio di usarlo perché anche in questo caso è molto semplice perdere accesso.

Supponiamo che usiate il vostro account google per autenticarvi su facebook. Ad un certo punto decidete di chiudere definitivamente l'account google. Cosa succede al vostro account facebook?

Da un certo punto di vista così facendo lo avete appena messo sotto massima sicurezza: nessuno può più accederci, ma in questo modo non potete neanche facilmente esercitare i vostri diritti garantiti dal GDPR: scaricare una copia dei vostri dati o cancellarli per sempre (per citarne alcuni).

Nota sui numeri di telefono🔗

Molti provider adesso usano i numeri di telefono a scopo di verifica. Quando possibile, evitate di fornirne uno, sia per i motivi che ho detto poco sopra sugli OTP, che perché secondo me è anche più facile rimanere chiusi fuori: più facilmente che con le e-mail. Da quel che so è molto difficile ri-ottenere accesso ad un numero di telefono precedente, senza contare che dovreste ri-pagare una SIM apposta.

Lo strumento migliore è ancora un gestore di password🔗

Quando si tratta di un account online bisognerebbe sempre puntare ad averne il massimo controllo. Avere sempre usato un gestore di password è una benedizione anche per questo caso d'uso. Particolarmente quelli basati su KeePass:

  • Avete sempre una cronologia dettagliata dei cambiamenti che apportate ai vostri account. Compresi: vecchie password, vecchi OTP, vecchie passkey, etc. i gestori di password basati su KeePass registrano tutto, e se un domani dovesse servirvi un'informazione risalente a 15 anni prima, KeePass ce l'avrà (probabilmente) ancora lì.
  • Memorizzazione comprensiva degli accessi: KeePass vi fornisce la soluzione al problema che ho affrontato in questo post. Se dedicate il tempo necessario ad utilizzare KeePass per tutta la vostra vita digitale, avete in automatico anche uno storico completo e dettagliato degli account che avete lasciato in giro.

Non fate l'errore di utilizzare un gestore di password in cloud (Google/Apple ad esempio), perché non ne avete il controllo. KeePass è uno dei pochi che vi fornisce un file cifrato contenente tutti i vostri account, che potete gestire a piacere e copiarlo in qualunque posto vi serva, ma soprattutto è uno dei pochi software liberi con cui potete farlo.

Ma voglio veramente cancellare questo account🔗

Ho provato a ragionare un po' di più su questo punto. Supponiamo di essere riusciti ad ottenere accesso ad un account. Mi piacerebbe eliminarlo. Cosa dovrei considerare prima di procedere?

Mi vengono in mente due tipi di account, che per comodità chiamerò "morto" e "vivo".

Per account "vivo", intendo un account che al netto dei dati che contiene, può ancora fornirti accesso ad altre informazioni. Se sei in grado di rispondere "sì" alla domanda "Puoi ottenere informazioni attraverso questo account, a cui non potresti accederci senza?", allora questo account è ancora vivo. Alcuni esempi:

  • Tramite questo account puoi ottenere aggiornamenti che riguardano le attività di altre persone sul sito
  • Un account e-mail è un account vivo, perché ti permetterà sempre di avere accesso a delle mail destinate a quell'account, che altrimenti non riceveresti.
  • Un account di cui hai dimenticato la password è ancora vivo, finché puoi usarlo per tentare di recuperare la password originale. La password originale potrebbe essere un'informazione che puoi ottenere solamente tentando di accedere all'account, e la password originale è un'informazione preziosa per aiutarti ad avere accesso ad altri account che ti appartengono, specialmente se riesci a correlare quella password ad una data più o meno precisa.

Per account "morto", intendo un account non vivo. Ovvero un account che non può darti nessuna informazione. Mettiamo il caso che riesci a recuperare un account su un vecchio forum in cui non hai mai seguito nessuno (magari perché l'hai usato solo per fare qualche domanda). Per via della struttura di molti forum, in genere puoi sempre accedere ai nuovi post (anche senza un account) e l'account ti serve solo per inserire nuovi thread o rispondere a quelli esistenti. C'è una sola cosa che un'account del genere può fornirti: le informazioni che tu stesso ci hai messo dentro. Dunque fai in modo di sfruttare il GDPR per ottenere un'archivio di questi dati.

Dal momento che quest'ultimo tipo di account non può più fare altro per te, puoi eliminarlo.

Ma non mi piace l'idea di mantenere online il mio account "vivo"🔗

Questo è un problema gestibile, dato che hai ancora accesso, puoi pseudonimizzare l'account.

La prima cosa da fare in ogni caso, è richiedere i tuoi dati, sfruttando il GDPR. L'archivio che ti verrà fornito contiene dati storici che possono sempre tornarti utili, anche se adesso non ne vedi l'utilità. Assicurati di salvare questo archivio come primissima cosa.

Una volta ottenuto questo archivio, procedi a pseudonimizzare tutte le informazioni che ti riguardano di questo account e che non vuoi siano pubbliche. Se è un account social, comincia dai permessi: "Chi può vedere i tuoi post?", "Chi può vedere i tuoi follower?", etc. Restringi queste informazioni a piacimento.

Prosegui con il resto dei dati: Questo account ha il tuo nome sopra? Mettici una stringa a caso, come "pnmqga8", la tua vera data di nascita? Metti una data a caso. Fai questo per tutti i dati che non ti va che rimangano disponibili. E se non puoi modificarli, rendili privati.

Questo procedimento torna utile più che altro per evitare che altri tuoi account siano compromessi (oltre che per evitare che informazioni che ti riguardano rimangano disponibili in rete).

In questo modo puoi mantenere accesso agli account, senza mantenere le tue informazioni in rete.

Avatar di @lucadmt
Luca D'Amato (@lucadmt) luca@damato.me

Un generalista e il suo angolo di internet


Vorresti dare le tue opinioni rispetto questo post? Scrivilo online e inserisci il link della risposta qui per mandarmi una Webmention