Browserqualität: Firefox versus IE
Posted by Urs Meile on 3rd Februar 2009
Browsing Security 3
Eine wasserdichte Bewertung der Sicherheit von Webbrowsern ist kaum realisierbar. Ideal wäre ein gross angelegter Test in repräsentativen Real World Umgebungen. Da würden nicht nur die Qualität des Browsers, sondern auch die Bedienerfreundlichkeit der Security-Features und der reale Angriffsdruck unter dem Strich in eine Impact-Statistik einfliessen. Das erscheint als kaum realisierbares Vorhaben. Bleibt also nur das willkürliche Mixen zufälliger Argumente übrig? Nützlich im Hinblick auf eine sachliche Diskussion erscheint, sich zuerst über sinnvolle Kriterien Gedanken zu machen und dann deren Operationalisierung offenzulegen. So kann immerhin die sicherheitsmässige Qualität eines Produkts eingeschätzt werden.
Ein erstes Kriterium ist die Verletzlichkeitsrate, die über die Zahl der relevanten Verletzlichkeiten und den Patchingbedarf Auskunft gibt. Die Qualität der Patchingmechanismen entscheiden zweitens darüber, wie kurz die Exposition einer Verletzlichkeit gehalten werden kann. Browser Security Features sollen ein Eindringen von Malware und oder Datenklau auf Applikationsebene verhindern. Die Unterstützung von OS Security Features härtet das Gesamtsystem. Eine vernünftige Out of the Box Konfiguration hilft vor allem selbstadministrierenden Endanwendern.
Ist ein Set von vernünftig wirkenden Kriterien gefunden, stellt sich die Frage, wie jedes Kriterium in konkrete Fragestellungen umzusetzen und dann und auf das empirische Material anzuwenden ist. Da bestehen viele Möglichkeiten. Im folgenden werden provisorische, summarische und diskussionswürdige Einschätzungen von Firefox 3 und IE 7 vorgenommen.
Verletzlichkeitsrate
Als Indikator für die securityrelevante Codequalität nehmen wir die 2008 bekannt gewordenen kritischen Verletzlichkeiten, dokumentiert in den Advisories von Secunia. Betrachtet werden Advisories mit der Einstufung moderat, hoch oder extrem kritisch. Darin werden die einzelnen Verletzlichkeiten gezählt. IE7 kommt 2008 auf 22, der Mitte Juni veröffentlichte Firefox 3.x auf 25. Auf ein Jahr hochgerechnet macht das für IE 22 und für Firefox 43 Verletzlichkeiten. Dass die Zahlen beim Firefox trotzt geringerem Angriffsdruck erheblich höher sind, kann einerseits auf Probleme mit der Codequalität deuten und andererseits auch auf die Offenheit des Quellcodes zurückgeführt werden. Auch IE kann nicht wirklich glänzen. In Sachen Verletzlichkeitsrate kriegt Firefox das Rating UNBEFRIEDIGEND und IE ein BEFRIEDIGEND.
Patchen / Exposition
Die beiden Produkte weisen unterschiedliche Patching Mechanismen auf. Das ergibt erhebliche Unterschiede im Hinblick auf die betriebliche Handhabung, die an anderer Stelle detaillierter besprochen werden müssen. Firefox hat einen konfigurierbaren standalone Updatemechanismus. Nach Bedarf wird gepatcht, meist in Forme eines neuen Releases. IE ist ins Windows Update eingebunden und patcht dementsprechend nach Termin, abgesehen von Sondersituationen. 2008 haben beide Produkte alle kritischen Verletzlichkeiten gepatcht und erhalten beide das Rating GUT.
Browser Security Features
Beide Browser machen durch ihre Ausstattung deutlich, dass Security ein wichtiges Problem und anerkanntes Anliegen ist. Grundlegende Mechanismen wie sind vorhanden. Die anspruchsvolle Cross Site Scripting Prävention ist erst in Ansätzen entwickelt. Die Implementierung mancher Features involviert den User mit Warnungen und Entscheidungen – da ist noch nicht das Optimum erreicht. Beide bekommen das Rating BEFRIEDIGEND.
| Firefox 3.05 | I Explorer 7 | |
| Warnung add-ons, Plugins | + | + |
| Phising Filter | + | + |
| exe download Warnung | - | + |
| Cross Site Scripting Prävention | - | - |
| Blacklisted Site Warnung | + | - |
| Zonen | - | + |
Unterstützung OS Security Features
Leute, die einigermassen sicher browsen wollen, wählen das entsprechende solideste Produkt in einer Betriebssystem-Familie. Bei Windows ist das Vista. Gegenüber von Windows XP bietet Vista zusätzliche Security-Features, die von einem Webbrowser unterstützt werden sollten.
Integrity Levels für Prozesse und Objekte verhindern unter Vista einen Zugriff niederwertiger Prozesse auf höher eingestufte Entitäten. Wird von IE angemessen (low) genutzt, Firefox läuft unter dem Standardlevel.
Address Space Layout Randomization (ASLR) lädt Systemkomponenten in zufällige Speicheradressen und erschwert ein Ausnutzen von Buffer Overflows. Von beiden Browsern genutzt.
Applikations-Virtualisierung leitet Schreibvorgänge unter Vista in Files und Registry Keys in virtuelle Locations um. Nur von IE unterstützt.
Data Execution Prevention (DEP) wurde bereits unter XP entwickelt. Mit DEP können Speicherbereiche als Daten markiert werden, die nicht ausgeführt werden dürfen. Bei Firefox ON, bei Internet Explorer OFF (muss manuell aktiviert werden)
| Firefox 3.05 | I Explorer 7 | |
| Integrity | - | + |
| ASLR | + | + |
| Virtualisierung | - | + |
| DEP | + | - |
Zusammenfassendes Rating bei OS Security Features: Firefox BEFRIEDIGEND, IE GUT.
Out of the Box Konfiguration
Die ist keine eigentliches Security-Feature, wird hier aber einfach aufgrund der praktischen Bedeutung beleuchtet. Viele Endanwender und auch manche Administratoren übernehmen diese Seetings mit geringen Änderungen. Bei Firefox kann ein Vorbehalt angebracht werden, dass Java enabled ist. Die Grundkonfiguration der beiden Browser ist vernünftig und das Rating GUT.
Zusammenfassung
Eine summarische Bewertung der einzelnen Kriterien führt zu einem erfreulichen Schluss. Die beiden betrachteten Browser bieten einen passablen Securitystandard und zeigen sich sicherheitsmässig im gleichen Band. Im Hinblick auf eine Wahl können also funktionale, ergonomische und betriebliche Aspekte in den Vordergrund rücken. Damit kommen eine ganze Reihe weiterer Gesichtspunkte ins Spiel wie: Erweiterbarkeit, Usability, Transparenz (auf Ebene Engineering und Source Code), Kompatibilität oder Handhabbarkeit in zentral gemangten Umgebungen (Deployment von Patches und Policies). Bei sicherheitsmässiger Gleichwertigkeit kann also die Frage ins Zentrum rücken, welcher Browser bei geringstem Aufwand den besten Nutzen abwirft.
Aussagen von der Art „X ist sicherer als Y“ lassen sich in dieser Allgemeinheit kaum begründen. Wichtiger als die Wahl des einen oder anderen Produkts ist, die aktuellste Version mit allen Patches zu verwenden. Und eine Reihe von weiteren Elementen zu beachten, die beim (un)sicheren Browsen involviert sind.
Diskussion
Einen Entwurf dieses Materials habe ich einigen Windows Experten vorgelegt, die mehrere kritische Punkte in die Diskussion einbringen:
- Praxisnähe: Zwei Kollegen haben grossen Wert darauf gelegt, dass eine Beschäftigung mit dem grossen Thema „Browsing Security“ praxisrelevante Ergebnisse hervorbringen soll. Es wird die Frage aufgeworfen, wie weit konzeptionelle Arbeiten dazu dienlich oder nötig sind.
- Kriterienset: Im grossen Ganzen wird das Top Down Vorgehen zur Browserbewertung als sinnvoll und das vorgeschlagene Kriterienset als nützliches Ausgangsmaterial bewertet.
- Verletzlichkeiten / Codequalität. Ein kritischer Einwand bezieht sich auf den Vorschlag, die Verletzlichkeiten einfach unter dem Titel Codequalität abzuhandeln. Das halte ich für teilweise berechtigt und habe das Kriterium nun als Verletzlichkeitsrate statt dem ursprünglichen Code Quality gefasst.
- Ebenfalls mit dem Thema Codequalität befasst sich ein schriftlicher Kommentar, der sich auch mit der Weiterentwicklung der Untersuchungsmethodik beschäftigt: „Bezüglich Code Qualität kann natürlich extrem in die Tiefe gegangen werden, wobei meines Erachtens nicht direkt von der Anzahl aufgedeckten Verletzlichkeiten auf die Code Qualität verlässlich Rückschlüsse gezogen werden können – viel mehr müssen da weitgreifende Aspekte wie das QA Program von MS und Code Audit Vorgänge auf den offenen Source Code von Firefox etc. mit einbezogen werden.“ Dabei ist wahrscheinlich vor allem „die Reaktionszeit vom Auftreten bis zur Patchverfügbarkeit und die Dauer bis dieser die End-Anwender erreicht hat, massgebend und relevant.“ Bei der Code Beurteilung muss unterschieden werden: „Geht es nur um Qualität im Bezug auf die Sicherheit oder soll z.B. die Stabilität/Zuverlässigkeit generell bewertet werden. Diese Faktoren werden dann sicherlich im Aufbau des konkreten Fragenkataloges definiert, wären aber vieleicht schon vorgängig sinnvoll grob abzustecken.“
- Betrieblich: Ein Admin, der den Usern weitere Browser über Applikations-Virtualisierung anbietet, nennt betriebliche Gründe für seinen Einsatz von Internet Explorer:
„- schnelle Patchreaktion von Microsoft (Zero-Day Kriterium)
- automatisches Patchen ohne admin-Rechte dank WSUS
- granulare und vollständige Konfiguration und Kontrolle mit GPOs
- Automatisches Deployment“ - Transparenz, Erweiterbarkeit. In der Diskussion wurde nicht ohne Berechtigung vorgeschlagen, Kriterien wie die Transparenz des Source Codes, Erweiterbarkeit oder das Angebot von Plugins als Kriterien aufzunehmen. Die Securityrelevanz dieser und weiterer Elemente (wie Usability, Handhabbarkeit) ist unbestritten. Ich schlage eine Differenzierung vor und würde diese Aspekte in einer zweiten Gruppe von mittelbaren Securitykriterien unterbringen. Elemente wie die Sichtbarkeit des Quellcodes oder die Erweiterbarkeit korrellieren nicht eins zu eins mit Security, sondern in einer ziemlich komplexen Weise, die zu analysieren und diskutieren wäre.
Ich bedanke mich bei Thomas Berchtold, Andreas Jost , Jacques Laville und Thomas Widmann für Diskussion, Kritik und Anregungen.
Posted in IT-Sicherheit, Webbrowser | No Comments »
