I password manager sono strumenti diventati ormai essenziali per la gestione sicura delle proprie credenziali di accesso e di altri dati riservati. Gli strumenti per la conservazione e gestione delle password integrati nei principali browser Web non sono sicuri: è molto facile trovare le password salvate su un qualunque sistema per un utente che ne ha disponibilità fisica o per un malware che riuscisse a farsi strada in una macchina altrui.
D’altra parte, però, anche i password manager online non hanno ultimamente vissuto un periodo propriamente propizio: LastPass ha subìto alcune aggressioni; a LastPass e Bitwarden è stata contestata la procedura di generazione delle chiavi.
Alcuni utenti stanno quindi riconsiderando l’utilizzo di password manager installati in locale e chi già ne faceva uso sta guardando con attenzione agli aspetti legati alla sicurezza degli stessi.
Tra i password manager derivati da KeePass più utilizzati e apprezzati in assoluto c’è sicuramente KeePassXC, che già abbiamo recensito in passato. In un altro articolo abbiamo visto come salvare in sicurezza e sincronizzare username e password tra dispositivi sotto il proprio diretto controllo.
Quanto è sicuro KeePassXC?
KeePassXC è un software open source di gestione delle password che consente agli utenti di memorizzare e gestire in modo sicuro le proprie credenziali di accesso. Come abbiamo accennato in precedenza, è un fork di KeePass ed è progettato per funzionare su diverse piattaforme tra cui Windows, macOS e Linux.
KeePassXC memorizza le password dell’utente in un database crittografato che può essere protetto con una password principale o un “file chiave”: l’utente usa una singola password per accedere al database e recuperare password complesse e uniche per ciascun servizio online.
Il programma integra una funzionalità di generazione di password complesse, una funzione di ricerca per trovare rapidamente le credenziali di accesso, e la possibilità di organizzare le password in categorie per una maggiore facilità di gestione. Supporta anche il completamento automatico delle credenziali di accesso ovvero il loro inserimento nei form di login a livello di browser Web.
KeePassXC è considerato un’alternativa sicura e affidabile alle soluzioni commerciali di gestione delle password e vanta una comunità di sviluppatori che continuano a migliorare e ad aggiornare il software.
Sebbene il documento sia stato redatto all’inizio dell’anno, arriva adesso la conferma che KeePassXC è stato sottoposto a un processo di verifica indipendente. La KeePassXC Application Security Review è stata curata da Zaur Molotnikov, ingegnere software specializzato con sede a Monaco.
Esaminando i risultati dell’analisi che è stata condotta sul sorgente e sul comportamento di KeePassXC, si apprende che ad oggi il programma non soffre di alcuna vulnerabilità di sicurezza o almeno Molotnikov non ne ha individuata nessuna nuova, finora sconosciuta.
I suggerimenti per gli utenti di KeePassXC
Molotnikov condivide alcuni consigli destinati in primis agli utenti di KeePassXC: questi ultimi dovrebbero sempre selezionare il formato di file KDBX 4 per la memorizzazione e gestione delle password.
Dal menu Database, Sicurezza database di KeePassXC, si deve selezionare Impostazioni crittografia quindi scegliere l’opzione Formato database. Nel caso in cui si utilizzasse un vecchio formato, viene caldamente suggerito di migrare a KDBX 4: il passaggio è questione di pochi clic.
Oltre al suggerimento di scegliere password lunghe e complesse a protezione degli archivi KeePassXC, Molotnikov consiglia di optare per Argon2id quando, in fase di creazione del database delle password viene chiesto di indicare i parametri per la funzione di derivazione delle chiavi e impostare l’utilizzo di almeno 2048 MB di memoria con almeno 2 thread e 4 round di trasformazione.
Argon2id è una funzione di hashing delle password derivata dall’algoritmo Argon2, a sua volta progettato per fornire una maggiore resistenza agli attacchi di tipo brute force e a quelli basati sul dizionario rispetto agli algoritmi di hashing di password precedenti come bcrypt e scrypt. Argon2id è resistente a diversi tipi di attacchi, tra cui gli attacchi di tipo “side-channel” e i cosiddetti attacchi di tipo “time-memory trade-off“.
Il ricercatore ha fornito anche altri suggerimenti agli utenti ma sono di carattere generale e “pratico”, non strettamente legati al funzionamento di KeePassXC: molti di essi hanno a che fare con la creazione di una password sicura.
Le prescrizioni destinate agli sviluppatori di KeePassXC
Agli autori di KeePassXC, Molotnikov consiglia di avviare gli utenti – tramite l’interfaccia del software – circa l’utilizzo di vecchi formati di file e di impostare come predefinito l’algoritmo Argon2id. Allo stesso modo viene suggerito di impostare i parametri KDF come indicato al precedente paragrafo, quindi in maniera più severa.
I parametri KDF (Key Derivation Function) vengono utilizzati dalla funzione omonima per derivare una chiave crittografica da un input di base come una password o una passphrase. Tra i parametri KDF più comuni ci sono il salt ovvero una sequenza di dati casuali che viene aggiunta all’input di base prima di passare attraverso la funzione KDF; i round ovvero il numero di iterazioni che la funzione KDF deve eseguire per derivare la chiave crittografica; la lunghezza della chiave ovvero la dimensione della chiave crittografica prodotta dalla funzione; l’algoritmo di hashing utilizzato per derivare la chiave crittografica.
KeePassXC dovrebbe rilevare ed evidenziare parametri KDF definiti in modo non sicuro esortando gli utenti ad apportare le migliorie del caso per proteggere i dati conservati in archivio.