Wie führe ich Firefox im geschützten Modus aus? (dh bei niedriger Integrität)

9

Mir ist aufgefallen, dass Firefox im Gegensatz zu Chrome und Internet Explorer nicht in der niedrigen obligatorischen Stufe (auch bekannt als geschützter Modus, niedrige Integrität) ausgeführt wird.

Google Chrome:

Alt-Text

Microsoft Internet Explorer:

Geben Sie hier die Bildbeschreibung ein

Mozilla Firefox:

Alt-Text

Gemäß den Anweisungen von Microsoft kann ich Firefox manuell in den Modus für niedrige Integrität zwingen, indem ich Folgendes verwende:

icacls firefox.exe /setintegritylevel Low 

Firefox reagiert jedoch nicht gut darauf, nicht mit genügend Rechten ausgeführt zu werden:

Alt-Text

Ich mag die Sicherheit zu wissen, dass mein Browser mit weniger Rechten läuft als ich. Gibt es eine Möglichkeit, Firefox im Low-Rights-Modus auszuführen? Plant Mozilla, irgendwann den "geschützten Modus" hinzuzufügen? Hat jemand eine Problemumgehung für Firefox gefunden, die den Low-Rights-Modus nicht unterstützt?


Aktualisieren

Aus einem Interview im Juli 2007 mit Mike Schroepfer , VP of Engineering bei der Mozilla Foundation:

... wir glauben auch an eine gründliche Verteidigung und untersuchen den geschützten Modus zusammen mit vielen anderen Techniken, um die Sicherheit für zukünftige Versionen zu verbessern.

Nach drei Jahren scheint es keine Priorität zu haben.

Aktualisieren

  • 28.09.2013
  • 5 Jahre später
  • Firefox 24.0
  • unterstützt den geschützten Modus immer noch nicht
Ian Boyd
quelle
Meine Güte, warum bekommt IE den Rap "schlechte Sicherheit"?
Mark Sowul

Antworten:

4

Leider gibt es derzeit keine Möglichkeit, Firefox im geschützten Modus auszuführen.

Wenn Sie kein 64-Bit-Windows ausführen , können Sie mit Sandboxie etwas Ähnliches erhalten .

Dan Walker
quelle
4
Ich habe gerade eine kurze Suche in Mozillas Bugtracker durchgeführt und nichts bezüglich der Integritätsstufen gefunden. Dies deutet darauf hin, dass es derzeit noch nicht geplant ist, sie zu unterstützen. Angesichts meiner früheren Erfahrungen mit dem Bug-Tracking-System und den Entwicklern halte ich jedoch zwei Optionen für plausibel: (1) Wenn ich ein Ticket öffnen würde, das um Unterstützung auf Integritätsstufe bittet, würde es innerhalb einer halben Stunde als Duplikat eines anderen Tickets geschlossen mit einem Namen, den niemand suchen konnte, und (2) die bloße Idee , Windows-spezifische Funktionen zu unterstützen, würde viele Entwickler dort erschrecken.
Joey
Ich habe nie bemerkt, dass Firefox neben Windows auch auf einer anderen Plattform existiert. Es macht Sinn, dass es eine Mac- und Linux-Version gibt, ich habe immer nur einen Windows-Download gesehen.
Ian Boyd
Ich denke, kostenlose und verfügbare VM-Appliances haben den Donner aus dem Sandboxing gestohlen.
kmarsh
Oh, und btw, ist die Antwort „Kann es nicht tun“ als Antwort markiert, weil „Kann es nicht tun“ ist eine gültige Antwort.
Ian Boyd
1

Sie können Firefox im Modus mit niedriger Integrität mit den folgenden Befehlen ausführen:

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

Beachten Sie, dass Sie die zweite Charge für jeden Benutzer auf Ihrem System müssen laufen, Customizing Benutzernamen , sonst werden sie eine bekommen „Firefox wird bereits ausgeführt“ Meldungsfeld.

Dieses Setup verursacht jedoch die folgenden Macken:

  1. Der Profilmanager verhält sich möglicherweise nicht richtig.
  2. Sie erhalten jedes Mal eine Sicherheitswarnung, wenn Sie Firefox starten.
  3. Downloads können nur in Verzeichnissen mit geringer Integrität abgelegt werden (daher werden Downloads oben als mit geringer Integrität gekennzeichnet).
  4. Das Öffnen von Downloads direkt aus Firefox schlägt im Allgemeinen fehl.
Simon Capewell
quelle
Es sollte jedem, der mitkommt, angemerkt werden, dass das Durchführen dieser Schritte im Wesentlichen den Zweck des "Proteted Mode Firefox" zunichte macht. Indem Sie FireFox erlauben, an andere Speicherorte (Temp, Mozilla, Downloads) zu schreiben, entfernen Sie den Zweck, FF auf der obligatorischen Integritätsstufe Niedrig auszuführen. Schlimmer ist, dass jetzt alle Anwendungen mit geringen Berechtigungen (z. B. Chrome, mein Media Player) an diese Speicherorte schreiben können. Mit anderen Worten: Sie gewinnen hier nicht nur nichts, sondern verlieren auch die Sicherheit. Sie sollten FF besser als Standardbenutzer ausführen und die anderen Ordner in Ruhe lassen.
Ian Boyd
Trotzdem gebe ich dem Artikel immer noch eine +1, da dies zeigt, wie Anwendungen mit geringem Privileg nur an bestimmte Speicherorte schreiben können. Aber noch einmal: Tun Sie nicht, was diese Antwort sagt. Dies ist ein Beispiel für eine schlechte Lösung - beispielsweise das Ändern der Berechtigungen für den Ordner "Windows & Programme", um allen den vollständigen Zugriff zu ermöglichen, da ein Programm dort schreiben möchte. Du machst es noch schlimmer.
Ian Boyd
0

Ian, du verstehst nicht, wie der geschützte Modus funktioniert. Die Lösung von Simon Capewell ist ein gültiger Weg, um die Sicherheit von Firefox zu erhöhen. Sie behaupten beispielsweise, dass die Behauptung, dass seine Lösung den gesamten Schutz der niedrigen Integritätsstufe irgendwie deaktiviert, völlig falsch ist. Chrome und IE verwenden dieselben Methoden, da Downloads auch im geschützten IE in den Download-Ordner geschrieben werden. Andernfalls können Sie nichts herunterladen. Obwohl der IE möglicherweise eine Art Wrapper verwendet, wodurch der Hauptprozess von denjenigen isoliert wird, die nicht vertrauenswürdige Daten verarbeiten, um die Sicherheit zu erhöhen, wie dies bei Chrome der Fall ist, ist dies umstritten, da bei den oben beschriebenen Methoden alle Komponenten von Firefox vor Manipulationen am System geschützt sind. Während in Chrome der Hauptprozess bei mittlerer Integrität und die Rendering-Prozesse bei niedriger Integrität ausgeführt werden.

Wenn Sie Firefox auf diese Weise konfigurieren, werden Windows- und Programmdateien vor Änderungen geschützt, wodurch Firefox vom Rest Ihres Computers isoliert wird. Firefox kann beispielsweise keine Malware in Ihren Startordner ablegen oder einen Registrierungseintrag hinzufügen, der beim Start automatisch Malware startet, die in Ihrem Download-Ordner abgelegt wurde (in den Firefox schreiben darf). Darüber hinaus schützt das Ausführen von Firefox als niedrige Integritätsstufe vor dem Versuch von Firefox, die durch Methoden wie das Erstellen eines Threads in einem Remoteprozess erzwungenen ACLs zu umgehen, um Code im Sicherheitskontext dieses Prozesses auszuführen. Firefox darf weiterhin Dateien in temporäre Ordner und möglicherweise ausführbare Dateien ablegen, ebenso wie Chrome und IE. Daher müssen Integritätsstufen mit SRP oder AppLocker kombiniert werden. um zu verhindern, dass ausführbare Dateien in den Verzeichnissen abgelegt werden, in die Firefox schreiben darf. Diese Anforderung gilt auch für IE und Chrome.

Sobald dies erledigt ist, wird Firefox gegen Drive-by-Downloads gehärtet und stärker geschützt als der IE, da der IE im geschützten Modus, wenn er nicht mit SRP oder Applocker kombiniert wird, keinen ausreichenden Schutz bietet. Firefox darf in keiner Weise in ein eigenes Verzeichnis und in temporäre Ordner schreiben, die sich von den Funktionen von Protected Mode Chrome und Protected Mode IE unterscheiden.

Die einzige Gefahr dieser Lösung: Ich habe die schlechte Angewohnheit, ausführbare Dateien in meinem Download-Ordner zu belassen, den ich später ausführe. Diese ausführbaren Dateien können möglicherweise manipuliert werden, wenn Firefox nach dem Herunterladen ausgenutzt wird. Verschieben Sie eine Datei nach dem Herunterladen aus dem Ordner "Downloads". Es besteht auch ein sehr geringes Risiko, dass eine Sicherheitsanfälligkeit in Firefox ausgenutzt wird, um eine temporäre Datei im zulässigen temporären Ordner zu ändern, die dann eine Sicherheitsanfälligkeit in einem Prozess mit höherer Integritätsstufe ausnutzt, wenn diese temporäre Datei verwendet wird. Dies wird jedoch niemals passieren und ist nur eine theoretische Schwachstelle.

Weiterführende Literatur / Quellen:

Windows 7 SRP (funktioniert unter Home Premium, obwohl Sie nicht über AppLocker verfügen):

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

Integritätsstufen:

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

Geschützter Modus IE:

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

Grundlegende Informationen zu "Drive-by-Downloads":

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

Details zu Chrome unter Windows Sandboxing (mehr als nur Integritätsstufen):

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

Gaff
quelle
1
Es spielt keine Rolle, von wie vielen allgemeinen Standorten Sie den Schutz für niedrige Integrität entfernt haben. Das Hinzufügen bestimmter Orte, die nicht mehr geschützt werden sollen, macht den Zweck des geschützten Modus zunichte. Sie haben in Ihrem eigenen Kopf entschieden, dass das Schreiben in Tempund der Mozilla AppData- Ordner ein akzeptabler Kompromiss ist. weil wir alle wissen, dass wir wirklich verhindern wollen, dass Programme auf Windows und ProgramFiles zugreifen. Das Problem ist: Ich weiß nicht, was FF speichert AppData\Mozilla, aber ich möchte sicher nicht, dass Malware die Update-URLs vergiftet oder meine Erweiterungen ändert. Das ist der Punkt der Sicherheit.
Ian Boyd
Sie glauben also nicht, dass es sich lohnt, Firefox im geschützten Modus zu verwenden, da Firefox selbst möglicherweise gefährdet ist? Der IE selbst kann theoretisch kompromittiert werden, selbst wenn er im geschützten Modus ausgeführt wird. Das Ziel des geschützten Modus ist die Isolierung des Systems von Prozessen, die mit nicht vertrauenswürdigen Daten in Verbindung stehen, und kann daher ausgenutzt werden, um den Rest des Systems zu gefährden, und nicht, um das Programm vor sich selbst zu schützen. Bei mittlerer Integrität kann Firefox bereits in Temp und AppData schreiben. Das Verhindern von Rechten an allen anderen Standorten ist daher eindeutig ein erheblicher Sicherheitsgewinn.
Wenn Sie sich jedoch mit der Integrität Ihrer Erweiterungen befassen, was verständlich ist, wenn Sie Kennwörter schützen möchten, müssen Sie lediglich die Regeln für die Integritätsstufe verfeinern. Integritätsstufen verhindern nicht, dass Lese- oder Ausführungsvorgänge über der Integritätsstufe einer Anwendung liegen. Markieren Sie nur den temporären Ordner als zulässig und alle Speicherorte der Konfigurationsdatei, in die Firefox schreiben soll, und schließen Sie den in AppData gefundenen Erweiterungsordner aus. Update-URLs werden nicht in einer vom Benutzer zugänglichen Konfiguration gespeichert: kb.mozillazine.org/… .
ProcessMonitor kann hilfreich sein, um festzustellen, welche Vorgänge eine Anwendung ausführen möchte, die aufgrund ihrer Integritätsstufe abgelehnt werden. Legen Sie einfach Filter für Anwendungsname = theappinquestion.exe und Ergebnis = ZUGRIFF VERWEIGERT fest, und Sie können die Integritätsstufen aller benötigten Dateien oder Registrierungsschlüssel einfach verfeinern. Dateien mit icacls, reg keys mit regil ( minasi.com/apps ). Mit dieser Methode konnte ich SC2 Beta so konfigurieren, dass es in weniger als 5 Minuten im Modus mit niedriger Integrität ausgeführt wird.
Ich denke, jeder vermisst die Tatsache, dass ich andere Software auf der Ebene der niedrigen obligatorischen Integrität verwende. Programme neben dh und Chrome (oder FireFox). Beispiel ist ein Media Player; Ich möchte, dass die Codeausführung aus einem Pufferüberlauf in einem Codec nur an die beiden zulässigen Stellen geschrieben werden darf. Und ich möchte definitiv nicht, dass der Code in Downloadsmeinen TempOrdner oder in meinen Ordner schreiben oder Einstellungen in Bezug auf Firefox ändern kann. Ich sollte keine Sicherheitsbarrieren auf meinem Computer aufheben, damit ein Programm funktioniert. Das Programm sollte sich den Sicherheitsbarrieren beugen.
Ian Boyd
-1

SRP ist nicht erforderlich, da Prozesse, die von einem Prozess mit niedriger Integritätsstufe ausgeführt werden, selbst eine niedrige Integritätsstufe erben. Es ist jedoch eine weitere Schutzschicht und daher immer noch eine gute Idee!


quelle