Apple dokumentiert Funktion und Lücken der Leopard-Firewall

Eine Support-Seite beschreibt nun die Arbeitsweise der neuen Firewall in Mac OS X Leopard. Die Kritik an deren Funktionsweise kann Apple damit jedoch nicht entschärfen - im Gegenteil.

In Pocket speichern vorlesen Druckansicht 742 Kommentare lesen
Lesezeit: 5 Min.

Auf der Seite Mac OS X 10.5: About the Application Firewall dokumentiert Apple nun ausführlicher als zuvor die Arbeitsweise der in die Kritik geratenen Firewall und auch deren Lücken. Insbesondere bestätigt Apple damit indirekt die Ergebnisse des letzte Woche von heise Security veröffentlichten Funktionstests und die Analyse der Probleme mit Skype und World of Warcraft. Ein Teil der in dem Dokument zusammengestellten Informationen fand sich auch schon früher in den Tiefen der Hilfedateien und der Dokumentation für Entwickler.

Apple betont, dass die neue Firewall nicht mehr mit einzelnen Paketen und deren Eigenschaften wie Quell- und Zieladresse oder -Ports arbeitet. Statt dessen filtert sie die Netzwerkaktivitäten von Programmen. Aus technischer Sicht arbeitet sie damit nicht mehr als Paketfilter im TCP/IP-Stack, sondern hängt sich in das Netzwerk-API von Mac OS X ein. Die herkömmliche, vorgelagerte Paketfilter-Firewall ipfw funktioniert zwar nach wie vor; Mac OS X bringt allerdings kein Frontend zur Steuerung mehr mit. Lediglich der sogenannte "Tarn-Modus" in den erweiterten Einstellungen nutzt ipfw noch, um Statusmeldungen via ICMP zu unterdrücken.

Applikationen erkennt die Firewall anhand digitaler Signaturen. Soll eine Regel für ein Programm angelegt werden, das bislang keine Signatur trägt, erstellt das Betriebssystem ad-hoc eine. Dabei ändert sich die Datei auf der Festplatte; Programme wie Skype oder WoW, die später ihre eigene Integrität testen, stolpern unter Umständen über die veränderte Prüfsumme. Ein weiteres, jedoch von Apple nicht erwähntes Problem, sind Programme in Interpreter-Sprachen wie Java oder Perl. Hier kann der Anwender nur Regeln definieren, die sich auf die Laufzeitumgebung selbst und damit auf alle Java- oder Perl-Programme beziehen.

Insbesondere dokumentiert Apple nun auch die offenen Türen, die an der Firewall vorbei führen. So lässt die Firewall selbst in der Einstellung "Alle eingehenden Verbindungen blockieren" weiterhin Verbindungen zu, die "für das Funktionieren des Computers wichtig sind". Interessant wird es an der Stelle, wo Apple definiert, welche Dienste das sind. Denn neben der automatischen Diensteerkennung Bonjour (mDNSResponder) sind das alle Programme, die mit Root-Rechten laufen. Dazu gehört beispielsweise auch der standardmäßig aktive Zeit-Server, der immer ansprechbar ist – auch wenn sich der Mac zum Beispiel direkt im Internet befindet.

Wie heise Security am Beispiel des mitgelieferten Netzwerk-Tools netcat bereits festgestellt hatte, dürfen in der Einstellung "Zugriff auf bestimmte Dienste und Programme festlegen" Programme mit einer Signatur einer akzeptierten Certification Authority durch die Firewall hindurch mit dem Netz kommunizieren, auch wenn sie nicht in der Ausnahmeliste auftauchen. Welche CAs genau akzeptiert werden, und ob somit jeder solche Signaturen ausstellen kann, ist bisher ungeklärt.

Insgesamt verfestigt sich der Eindruck, den schon der erste Funktionstest vermittelte: Im aktuellen Zustand ist der praktische Einsatz dieser Firewall nicht zu empfehlen. Der bedeutet nämlich beispielsweise, dass man den geschützten Bereich hinter dem Firewall-Router verlässt und sein MacBook unterwegs etwa via UMTS direkt mit dem Internet verbindet. Da möchte man eben nicht, dass jeder Dienst, den Apple oder ein Dritthersteller mit root-Rechten startet, trotz Blockiere-alles-Firewall im Internet erreichbar und damit auch angreifbar ist.

Der bereits erwähnte Zeit-Server demonstriert recht prägnant die Auswirkungen von Apples Sicherheits-Philosophie. Während andere Desktop-Systeme wie Windows oder Linux den regelmäßigen Zeitabgleich risikoarm über Client-Programme abwickeln, die vertrauenswürdige Zeit-Server abfragen, exponiert Apple seine Systeme mit einem eigenen vollwertigen Zeit-Server, den im Internet jeder attackieren kann. Es drängt sich die Frage auf, wie sich Apple so sicher sein kann, dass niemand in der Open-Source-Software ntpd eine kritische Sicherheitslücke entdecken wird, dass man ein solch unnötiges Risiko eingeht? (Übrigens läuft der Zeit-Server augenscheinlich weder in Leopards neuer Sandbox noch sind zusätzliche Sicherheitsoptionen des ntpd wie chroot() oder das Abgeben der Root-Rechte aktiv).

Dass man eine echte "Blockiere alles was reinkommt"-Konfiguration auch ohne nennenswerte Einschränkungen betreiben kann, beweisen nicht nur andere Desktop-Systeme, sondern auch Macs hinter einem Firewall-Router, der in der Standardeinstellung läuft und keine Verbindungsanfragen von außen nach innen weiterreicht. Die funktionieren nämlich trotzdem so gut wie uneingeschränkt.

Siehe dazu auch:

(ju)