Come eseguire Firefox in modalità protetta? (ovvero a basso livello di integrità)


9

Ho notato che Firefox, a differenza di Chrome e Internet Explorer, non funziona nel livello minimo obbligatorio (aka modalità protetta, bassa integrità)

Google Chrome:

testo alternativo

Microsoft Internet Explorer:

inserisci qui la descrizione dell'immagine

Mozilla Firefox:

testo alternativo

Seguendo le istruzioni di Microsoft , posso forzare manualmente Firefox in modalità a bassa integrità utilizzando:

icacls firefox.exe /setintegritylevel Low 

Tuttavia Firefox non reagisce bene alla mancata esecuzione con diritti sufficienti:

testo alternativo

Mi piace la sicurezza di sapere che il mio browser funziona con meno diritti di me. C'è un modo per eseguire Firefox in modalità con diritti limitati? Mozilla ha in programma di aggiungere "modalità protetta" qualche volta? Qualcuno ha trovato una soluzione alternativa a Firefox che non gestisce la modalità con diritti bassi?


Aggiornare

Da un'intervista del luglio 2007 a Mike Schroepfer , vicepresidente di ingegneria presso la Mozilla Foundation:

... crediamo anche nella difesa in profondità e stiamo studiando la modalità protetta insieme a molte altre tecniche per migliorare la sicurezza delle versioni future.

Dopo tre anni non sembra che sia una priorità.

Aggiornare

  • 2013/09/28
  • 5 anni dopo
  • Firefox 24.0
  • non supporta ancora la modalità protetta

Accidenti, perché IE ottiene il rap "cattiva sicurezza"?
Mark Sowul,

Risposte:


4

Purtroppo al momento non è possibile eseguire Firefox in modalità protetta.

Se non stai utilizzando Windows a 64 bit, puoi ottenere qualcosa di simile usando Sandboxie .


4
Ho appena fatto una rapida ricerca attraverso il bugtracker di Mozilla e non ho trovato nulla riguardo ai livelli di integrità. Ciò suggerisce che in effetti non è attualmente pianificato supportarli. Data la mia precedente esperienza con il loro sistema di tracciamento dei bug e gli sviluppatori, penso che due opzioni siano plausibili: (1) Se aprissi un ticket chiedendo supporto per il livello di integrità, questo sarebbe chiuso entro mezz'ora come duplicato di un altro ticket con un nome che nessuno poteva cercarlo e (2) l' idea stessa di supportare funzionalità specifiche di Windows avrebbe spaventato molti sviluppatori lì.
Joey,

non ho mai capito che Firefox esiste su piattaforma oltre a Windows. Ha senso che ci sia una versione per Mac e Linux, ho sempre e solo visto un download di Windows.
Ian Boyd,

Penso che le macchine virtuali gratuite e disponibili abbiano rubato il tuono al sandboxing.
kmarsh

Oh, a proposito, la risposta "Non posso farlo" è stata contrassegnata come risposta, perché "Non posso farlo" è una risposta valida.
Ian Boyd,

1

Puoi eseguire Firefox in modalità a bassa integrità utilizzando i seguenti comandi:

icacls "C:\Program Files\Mozilla Firefox\Firefox.exe" /setintegritylevel low
icacls "C:\Program Files\Mozilla Firefox" /setintegritylevel(oi)(ci) low /t

icacls "C:\Users\*username*\AppData\Local\Temp" /setintegritylevel(oi)(ci) low /t
icacls "C:\Users\*username*\AppData\Local\Mozilla" /setintegritylevel(oi)(ci) low /t
icacls "C:\Users\*username*\AppData\Roaming\Mozilla" /setintegritylevel(oi)(ci) low /t
icacls "C:\Users\*username*\Downloads" /setintegritylevel(oi)(ci) low /t

Nota che dovrai eseguire il secondo batch per ciascun utente sul tuo sistema, personalizzando il nome utente , altrimenti riceveranno una finestra di messaggio "Firefox è già in esecuzione".

Tuttavia, questa configurazione provoca le seguenti stranezze:

  1. Il gestore profilo potrebbe non comportarsi correttamente.
  2. Riceverai un avviso di sicurezza ogni volta che avvierai Firefox.
  3. I download possono essere inseriti solo in directory a bassa integrità (quindi i download sono contrassegnati come bassa integrità sopra).
  4. L'apertura dei download direttamente da Firefox generalmente non riuscirà.

Va notato, per chiunque si presenti, che eseguire questi passaggi essenzialmente annullerà lo scopo della "modalità protetta Firefox". Consentendo FireFox di scrivere in altre sedi (Temp, Mozilla, Download) si rimuove lo scopo di avere FF esecuzione al basso livello di integrità obbligatori. Quel che è peggio è che ora tutte le applicazioni con privilegi limitati (ad es. Chrome, il mio lettore multimediale) possono scrivere in quelle posizioni. In altre parole: non solo non guadagni nulla qui, ma perdi effettivamente la sicurezza. È meglio eseguire FF come utente standard e lasciare da sole le altre cartelle.
Ian Boyd,

Detto questo, do comunque un articolo a +1, perché aiuta a illustrare come le applicazioni a basso privilegio possono scrivere solo in posizioni specifiche. Ma ancora una volta: non fare ciò che dice questa risposta. È un esempio di una cattiva soluzione, come cambiare le autorizzazioni nella cartella Windows e Programmi per consentire a tutti l'accesso completo, perché un programma vuole poter scrivere lì. Stai peggiorando le cose.
Ian Boyd,

0

Ian, non capisci come funziona la modalità protetta. La soluzione di Simon Capewell è un modo valido per aumentare la sicurezza di Firefox. Ad esempio, affermare che la sua soluzione disabilita in qualche modo l'intera protezione del livello di integrità basso è completamente falso. Chrome e IE utilizzano gli stessi metodi, poiché i download vengono scritti nella cartella dei download anche in modalità protetta IE. Altrimenti, non saresti in grado di scaricare nulla. Sebbene IE possa utilizzare una sorta di wrapper, isolando così il processo principale da quelli che elaborano dati non attendibili per una maggiore sicurezza come fa Chrome, questo è discutibile come nei metodi sopra descritti, tutti i componenti di Firefox sono isolati dalla manomissione del sistema. Considerando che, in Chrome, il processo principale viene eseguito con Integrità media e i processi di rendering con Integrità bassa.

La configurazione di Firefox in questo modo protegge Windows e i file di programma dalle modifiche, isolando così Firefox dal resto del computer. Ad Firefox, ad esempio, è impedito il rilascio di malware nella cartella Startup o l'aggiunta di una voce di registro che avvia automaticamente il malware rilasciato nella cartella dei download (su cui Firefox è autorizzato a scrivere) all'avvio. Inoltre, l'esecuzione di Firefox come livello di integrità basso protegge da tentativi di bypassare gli ACL applicati su di esso mediante metodi come la creazione di un thread in un processo remoto per eseguire il codice nel contesto di sicurezza di quel processo. A Firefox è ancora consentito rilasciare file in cartelle temporanee e potenzialmente eseguibili, come Chrome e IE. Pertanto, i livelli di integrità devono essere combinati con SRP o AppLocker, al fine di impedire l'esecuzione di eventuali file eseguibili inseriti nelle directory in cui Firefox è autorizzato a scrivere. Questo requisito è presente anche con IE e Chrome.

Una volta fatto, Firefox sarà protetto dai download drive-by e sarà protetto più di IE, poiché la modalità protetta IE non fornisce una protezione sufficiente quando non è combinata con SRP o Applocker. Non è in alcun modo consentire a Firefox di scrivere nella propria directory e cartelle temporanee in modo diverso da ciò che è consentito fare in modalità protetta Chrome e in modalità protetta IE.

L'unico inconveniente di questa soluzione: ho la cattiva abitudine di lasciare gli eseguibili all'interno della mia cartella Download, che eseguo in seguito. Questi eseguibili potrebbero essere manomessi se Firefox viene sfruttato dopo il download. Pertanto, dopo aver scaricato un file, spostarlo fuori dalla cartella Download. Esiste anche un rischio molto piccolo di sfruttamento di una vulnerabilità in Firefox al fine di modificare un file temporaneo nella cartella temporanea consentita che sfrutta quindi una vulnerabilità in un processo di livello di integrità superiore quando utilizza quel file temporaneo. Tuttavia, ciò non accadrà mai ed è solo una vulnerabilità teorica.

Ulteriori letture / fonti:

Windows 7 SRP (funziona su Home Premium, anche se non hai AppLocker):

http://www.wilderssecurity.com/showthread.php?t=262686

Livelli di integrità:

http://www.symantec.com/connect/articles/introduction-windows-integrity-control

Modalità protetta IE:

http://msdn.microsoft.com/en-us/library/bb250462(VS.85).aspx

Informazioni di base su "Download drive-by":

http://www.wilderssecurity.com/showthread.php?t=241732

Dettagli di Chrome su Windows Sandboxing (è più che semplici livelli di integrità):

http://www.chromium.org/developers/design-documents/sandbox


1
Non importa il numero di posizioni comuni da cui hai rimosso la protezione a bassa integrità. L'aggiunta di determinate posizioni da non proteggere più sta vanificando lo scopo della modalità protetta. Hai emesso un giudizio nella tua mente che scrivere Tempe la cartella Mozilla AppData è un compromesso accettabile; perché sappiamo tutti che vogliamo davvero impedire ai programmi di accedere a Windows e ProgramFiles. Il problema è: non so in cosa si trova FF AppData\Mozilla, ma sicuramente non voglio che il malware avveleni gli URL di aggiornamento o modifichi le mie estensioni. Questo è il punto di sicurezza.
Ian Boyd,

Quindi non credi che valga la pena usare Firefox in Modalità protetta perché Firefox stesso potrebbe essere compromesso? L'IE stesso può essere teoricamente compromesso, anche quando si esegue in modalità protetta. L'obiettivo della modalità protetta è l'isolamento del sistema dai processi che si interfacciano con dati non attendibili, e quindi può essere sfruttato per compromettere il resto del sistema, non la protezione del programma da se stesso. In condizioni di media integrità, Firefox può già scrivere su Temp e AppData, quindi prevenire i diritti su tutte le altre posizioni è chiaramente un guadagno significativo in termini di sicurezza.

Detto questo, se ti preoccupi dell'integrità delle tue estensioni, il che è comprensibile se cerchi di proteggere le password, devi semplicemente affinare le regole del livello di integrità. i livelli di integrità non impediscono la lettura o l'esecuzione di operazioni al di sopra del livello di integrità di un'applicazione. Contrassegna solo la cartella temporanea come consentito e tutte le posizioni dei file di configurazione su cui vuoi scrivere Firefox, assicurandoti di escludere la cartella delle estensioni presente in AppData. gli URL di aggiornamento non sono memorizzati nella configurazione accessibile all'utente: kb.mozillazine.org/… .

ProcessMonitor può essere utile per determinare quali operazioni sta tentando di eseguire un'applicazione che viene negata a causa del suo livello di integrità. Basta impostare i filtri per Nome applicazione = theappinquestion.exe e Risultato = ACCESS DENIED, e puoi affinare facilmente i livelli di integrità di tutti i file o chiavi di registro necessari. File con icacls, chiavi reg con regil ( minasi.com/apps ). Utilizzando questo metodo, sono stato in grado di configurare SC2 beta per l'esecuzione in modalità a bassa integrità in meno di 5 minuti.

penso che a tutti manchi il fatto che eseguo altri software a livello di bassa integrità obbligatoria; programmi oltre a ie e Chrome (o FireFox). Esempio è un lettore multimediale; Voglio che l'esecuzione del codice da un overflow del buffer in un codec non sia autorizzata a scrivere su nulla tranne le due posizioni consentite. E sicuramente non voglio che il codice sia in grado di scrivere nella mia Downloadscartella, la mia Tempcartella o di poter modificare le impostazioni relative a Firefox. non dovrei sollevare barriere di sicurezza sul mio computer per far funzionare un programma, il programma dovrebbe piegarsi alle barriere di sicurezza.
Ian Boyd,

-1

SRP non è necessario, poiché i processi eseguiti da un processo a basso livello di integrità ereditano essi stessi un livello di bassa integrità. Tuttavia, è un altro livello di protezione, e quindi è ancora una buona idea!

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.