come ricordare le password in modo sicuro?

2

Immagina di avere una chiave RSA privata sul tuo computer crittografata (tramite PBKDF2, AES-CTR, HMAC256) con una password, ora se l'utente desidera spuntare "Ricorda password", qual è il modo più sicuro per salvare / ricorda la password? Ovviamente non lo sta archiviando in chiaro nella directory locale.

Un'opzione potrebbe essere:

  • l'HardwareID del computer
  • il SID dell'utente corrente
  • il windows built-in EncryptFile (deve essere registrato come lo stesso account)

Il problema è che tutte queste informazioni possono essere compromesse quando si utilizza il trucco Utilman.exe per esempio.

Un'alternativa sarebbe l'offuscamento, ma sappiamo che non è davvero una soluzione a lungo termine.

Esiste una soluzione adeguata per questo o è solo una cattiva pratica?

    
posta hl3mukkel 30.06.2014 - 18:24
fonte

1 risposta

3

In definitiva, se la macchina può usare la password salvata senza un intervento umano specifico, allora ... può usarla. Ciò significa che un utente malintenzionato che ottiene il controllo completo della macchina (un dirottamento di software ostile con privilegi di amministratore / root o che prende il laptop e lo esegue) sarà in grado di recuperare la password. Su base teorica, se vuoi resistere a un simile aggressore, allora hai bisogno della password per non arrivare mai alla RAM della macchina stessa; hai bisogno di un componente antimanomissione che faccia tutto il processo. Questo è il modello di smart card e terminali di pagamento, che hanno una protezione fisica e distruggono attivamente i dati sensibili in caso di violazione fisica; e non hanno alcuna nozione di "utente root" accessibile anche all'utente umano vero.

Nel migliore dei casi puoi sperare di rallentare l'attaccante. Tuttavia, esistono ancora metodi di gestione migliori di altri. Ad esempio, quando si memorizza un valore segreto sensibile, si desidera evitare la perdita dei backup, o almeno con una protezione specifica. Allo stesso modo, l'utente potrebbe voler integrare tale memoria all'interno di una soluzione di gestione segreta più grande, ad es. una "password sicura" con una password principale o cose del genere. La soluzione migliore, quindi, è affidarsi ai servizi forniti dal sistema operativo per la memorizzazione di dati sensibili. Sui sistemi Windows, questo rimanda a DPAPI . Su Mac OS X, utilizza Portachiavi . Come al solito, il software che è più facile da progettare, implementare e implementare è un software che è già stato progettato, implementato e implementato da qualcun altro. Quindi, non provare a fare cose più o meno intelligenti dalla tua parte; lascia che il sistema operativo funzioni.

    
risposta data 11.07.2014 - 15:13
fonte

Leggi altre domande sui tag