I browser potrebbero migliorare la sicurezza delle password memorizzate usando setuid?

5

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?

    
posta AardvarkSoup 09.09.2012 - 15:53
fonte

3 risposte

7

Questa idea non è in alcun modo specifica per i browser web. Puoi fare lo stesso argomento che ogni applicazione eseguita dall'utente merita avere il proprio ID utente segregato sotto cui eseguire.

Sì, probabilmente si otterrebbe un certo livello di sicurezza perché, ad esempio, il lettore musicale malevolo in esecuzione nella stessa sessione desktop non può accedere alle password memorizzate del browser web. Ma penso che avresti trovato rapidamente che lo schema presentato non è pratico. L'utente non sarebbe in grado di accedere a quel file scaricato con il browser Web dal suo software di posta elettronica per collegarlo a un messaggio di posta elettronica o, in tal caso, al gestore di file per eliminarlo.

Questo è inoltre il fatto che ogni utente di sistema ora richiede N utenti in /etc/passwd dove N è il numero di diverse applicazioni che eseguono. Non solo il sistema non fornisce alcun modo di gestire tali account e di passare da uno all'altro, ma è semplicemente disordinato.

La tua idea è una partenza abbastanza significativa dal modello di sicurezza UNIX, ma ha un merito, e con il giusto tipo di aiuto dal sistema operativo può essere fatto in modo pulito. Android funziona più o meno esattamente come questo. .

    
risposta data 09.09.2012 - 16:51
fonte
5

A cosa stai pensando è obbligatorio il controllo degli accessi applicato alle applicazioni. Questo è ancora in fase di sviluppo nello spazio del sistema operativo consumer, ma qui ci sono alcuni esempi di questo modo di pensare:

Windows ha un sistema basato sul contesto di Obbligatorio Controllo di integrità , non differenzia l'accesso tra le applicazioni della stessa classe.

Una delle mie idee di contesto preferite sta impedendo a root di leggere / etc / shadow, consentendo comunque la verifica e la modifica delle password. Ecco la guida SELinux a questo .

    
risposta data 09.09.2012 - 17:08
fonte
4

However, this also means that any malicious application Bob accidently runs has access to this rather personal information as well.

Sì, e il difetto più ovvio del tuo approccio SUID per Firefox è che " qualsiasi applicazione dannosa che Bob accidentalmente lancia " può inviare eventi al server X per usare la GUI di Firefox per leggere le password.

Disordinato, ma fattibile.

OTOH, ritengo che un utente Unix normale dovrebbe avere il diritto di creare molti "subuser", un UID differente su cui avrebbe il controllo totale (incluso su , chpass e una versione sicura di rmuser ). Il sub-UID potrebbe avere un'evidente relazione aritmetica con l'UID di controllo. Ho sempre desiderato qualcosa del genere.

    
risposta data 09.09.2012 - 17:33
fonte