Mentre sto approfondendo diverse forme di autenticazione e persistenza delle sessioni, ho iniziato a chiedermi come vengono memorizzati i token e il rischio che un token venga compromesso. Lo scenario che ho in mente è il seguente:
Un utente ha sincronizzato il proprio smartphone con un account di social media e un token OAuth2 è stato concesso. Questo token ha una scadenza di tre giorni a partire da ora. L'utente ha lasciato il telefono sbloccato o è stato in grado di comprometterlo brevemente e ottenere l'accesso a qualsiasi cosa memorizzata sul dispositivo (si pensi al nuovo exploit dei messaggi multimediali Android). In questo momento, prendi rapidamente il token OAuth2 ed esci. Prendi questo token OAuth2 e usalo dal tuo dispositivo. Ora per i prossimi tre giorni, hai l'autorizzazione per l'account delle vittime.
La mia domanda: l'ultima parte è fattibile? Se è possibile individuare un token OAuth2, può essere utilizzato da un altro dispositivo per concedere l'autorizzazione? Quali sono le misure preventive per questo (oltre alla crittografia dei token OAuth)?