Ho fatto qualche ricerca sui gestori di password e ovviamente sono incappato in LastPass. Ci sono un sacco di domande e risposte sulla sicurezza di LastPass, ma per quanto ne so nessuno di loro ha parlato direttamente di questa specifica implementazione. Quando ho letto questo sono rimasto piuttosto sorpreso
LastPass has opted to use SHA-256, a slower hashing algorithm that provides more protection against brute-force attacks. LastPass utilizes the PBKDF2 function implemented with SHA-256 to turn your master password into your encryption key. LastPass performs x number of rounds of the function to create the encryption key, before a single additional round of PBKDF2 is done to create your login hash.
Ecco come dovrebbe funzionare (se capito correttamente) in base al loro sito web
- Usa PBKDF2 sulla password principale, con il nome utente come salt
- Iterare almeno 5000 volte (o superiore se configurato)
- La chiave master è il risultato delle iterazioni
- Fai uno giro aggiuntivo di PBKDF2 e invialo al server per l'autenticazione
-
Il server esegue altri 100.000 cicli di PBKDF2 con un sale diverso & scrypt with unknown parameter since the security breach
-
Archivia e / o confronta in / con Database (usa HSM per qualche parte qui o sotto il 5.)
-
Invia risposta al client con Vault (crittografato)
-
Il client decrittografa con la chiave master
Mentre in teoria tutto è bello e sicuro, sappiamo che LastPass ha avuto violazioni della sicurezza in passato. La chiave master viene solo sottoposta a un altro round prima di essere inviata a LastPast. Supponendo che un utente malintenzionato possa potenzialmente accedere all'infrastruttura LastPass e leggere i valori ricevuti prima del passaggio 5.), ciò mette in serio pericolo la chiave master?
Potrei pensare forse, ma non possiamo fare un attacco di dizionario sulla chiave, quindi il classico vettore di attacco su PBKDF2 non si applica. A meno che non abbiamo un hardware personalizzato molto strong, in modo da poter eseguire un attacco di dizionario sulla password principale, nonostante i 5000 round. Ma d'altra parte essere a un solo giro dalla Master Key sembra un po 'troppo vicino per il comfort.
Esistono minacce realistiche per la chiave master in tali circostanze?