Sui sistemi Unix-esque, Mozilla Firefox memorizza le preferenze degli utenti, la cronologia web e le password memorizzate in un insieme di file che sono leggibili e scrivibili da quel particolare utente.
Questo ha senso: quando l'utente bob
esegue Firefox, questi file devono essere leggibili da bob
affinché Firefox possa accedervi. Tuttavia, questo significa anche che qualsiasi applicazione dannosa che Bob esegue accidentalmente ha accesso a queste informazioni piuttosto personali.
Quindi perché i browser come Firefox non dovrebbero creare un nuovo utente, con una password casuale, chiamata qualcosa come firefox-bob
, che sarebbe l'unico utente in grado di accedere a questi file?
Successivamente, l'eseguibile firefox
principale potrebbe essere di proprietà di firefox-bob
, eseguibile da bob
, e avere il suo bit setuid
attivato.
Non mi sorprenderebbe se un sistema simile fosse possibile anche in (versioni recenti di) Windows.
Ovviamente un simile approccio non sarebbe resistente contro il malware che ottiene i permessi di root o gli exploit all'interno del browser stesso. Tuttavia, penso che l'utilizzo di permessi sui file come questo potrebbe migliorare significativamente la sicurezza delle password memorizzate o di altri dati privati.
Questa sarebbe una buona idea? Oppure mi sfugge qualcosa? Ci sono problemi pratici con questo approccio?