Il fattore 2 di Google "Ricorda questo computer" è protetto contro gli avversari con accesso root?

2

Questa domanda riguarda il tipo di autenticazione a 2 fattori implementata da Google Account.

La risposta a questa domanda descrive la sicurezza del trasferimento della chiave segreta tramite un cookie sicuro.

Ma cosa succede se l'avversario può eseguire codice remoto sulla tua macchina? Se riescono a copiare il cookie dalla tua macchina, questo lascia comunque un buco aperto. Se lo inviano a se stessi, non potrebbero accedere al tuo account in un secondo momento?

È possibile implementare un sistema di accesso che protegga da questo scenario, pur consentendo al tuo utente la comodità di "Ricorda questo computer per 30 giorni"?

    
posta David 16.08.2015 - 10:43
fonte

2 risposte

2

Sì, è possibile.

Se i token sono generati dal server creando una sequenza casuale protetta da crittografia memorizzata sull'account, questo token potrebbe essere aggiornato e riemesso in un determinato intervallo, invalidando quello precedente.

Il token verrà aggiornato solo in caso di utilizzo attivo, pertanto non invaliderà quello vecchio quando il computer client è spento. Questo approccio garantisce che un cookie copiato abbia solo un tempo limitato per essere riutilizzato, limitando l'esposizione dell'attacco. Nel caso in cui l'attaccante utilizzi il cookie in tempo, la sessione originale sarebbe scaduta e l'utente reale verrebbe disconnesso (a seconda di come è impostato l'intervallo). Potrebbe essere visualizzato un messaggio che l'account viene utilizzato altrove, avvisando l'utente dell'attacco.

Se l'attaccante ha comunque accesso permanente e può prendere qualsiasi nuovo identificatore, ha già vinto. Quanto sopra protegge solo contro un singolo furto del gettone. Ad esempio se l'utente ha lasciato lo schermo sbloccato e l'autore dell'attacco ha avuto accesso fisico e solo il tempo necessario per rubare il valore del cookie, o se il valore è stato rubato tramite un attacco XSS riflesso, che è l'esecuzione del codice nel browser e l'attacco non può essere ripetuto facilmente.

Un utente malintenzionato con accesso root potrebbe tuttavia non essere in grado di accedere a un normale cookie dell'utente. Chrome crittografa i cookie quando vengono salvati su disco, consentendo solo all'utente corrente di decrittografarli poiché la chiave deriva dalla loro password. Pertanto un attacco ai token nei cookie sarebbe più difficile.

    
risposta data 17.08.2015 - 00:05
fonte
1

Is it possible to implement a login system that protects against this scenario, while still allowing your user the convenience of "Remember this computer for 30 days"?

No. Per dirlo senza mezzi termini, è impossibile. Questo sarà un compito enorme, complicato e semplicemente non fattibile per un sistema di autenticazione da soddisfare.

Tutto ciò che puoi fare è stare attenti alle vulnerabilità a cui potrebbero influire il tuo software, sistema operativo e impostazioni di rete, e pensare a come proteggerti dalle eventuali vulnerabilità e mitigare le minacce a diversi livelli di sicurezza protetta meccanismo:

    
risposta data 16.08.2015 - 11:17
fonte

Leggi altre domande sui tag