Personal Firewall

Eine Personal Firewall (PFW, auch Desktop Firewall) ist eine Software, die den ein- und ausgehenden Datenverkehr eines PCs auf dem Rechner selbst filtert. Dies soll dem Schutz des Computers dienen, ihre Wirkung ist allerdings umstritten. Während in der Newsgroup de.comp.security.firewall die Wirkung von Personal Firewalls bezweifelt wird, hat das Bundesamt für Sicherheit in der Informationstechnik (BSI) die Personal Firewall als eine empfohlene Schutzmaßnahme für Nutzer des Internets aufgelistet.
Zweck und Funktionsweise
Eine Personal Firewall (von engl. firewall „Brandwand“) ist Software, die auf einem Host – d. h. auf einem an ein Netz angeschlossenen Computer – installiert ist, um diesen vor Gefahren aus dem Netz zu schützen.
Bei dem Netz kann es sich um das Internet oder um ein lokales Netz eines Unternehmens oder eines Privathaushaltes handeln. Die Personal Firewall soll Zugriffe von außen auf den Rechner kontrollieren und kann diese selektiv verhindern, um ihn vor Würmern (wie Blaster oder Sasser), Skriptkiddies oder Crackern zu schützen. Eine weitere Aufgabe besteht darin, Kommunikation von Trojanischen Pferden oder Spyware zu erkennen und zu verhindern.
Grundlegende Funktionen
Der Hauptbestandteil einer Personal Firewall ist ein Paketfilter. Dieser Paketfilter ermöglicht es, eingehende oder ausgehende Datenpakete nach vorgegebenen Regeln zu blockieren. Filterkriterien können Quell- und Zieladresse, Protokoll, sowie Quell- und Zielport sein.
Im Unterschied zu externen Firewalls hat eine Personal Firewall einen Anwendungsfilter (Application Control), der einzelne Anwendungsprogramme gezielt von der Netzkommunikation ausschließen kann. Zusätzlich kann man die Anwendung in die Regeln für den zuvor erwähnten Paketfilter einfließen lassen, sodass dieser anwendungsbasiert filtern kann. So kann einzelnen Anwendungen eine bestimmte Kommunikation erlaubt werden, die anderen verboten ist.
Die Personal Firewall stellt dem Anwender oder Administrator ein grafisches Frontend für die Konfiguration von Paket- und Anwendungsfilter zur Verfügung.
Weitere Funktionen
Viele Personal Firewalls bieten weitere Funktionen an, die aber nicht unbedingt in jedem Produkt vorhanden sind.
Die meisten Personal Firewalls verfügen über einen Lernmodus. Dabei werden die Regeln für Paketfilter und Anwendungsfilter durch Interaktion mit dem Benutzer festgelegt. Registriert die Personal Firewall Datenverkehr, für den noch keine Regel existiert, wird dies dem Benutzer in einem Dialogfenster gemeldet. Er kann daraufhin entscheiden, ob diese Verbindung gestattet oder blockiert werden soll. Aus der Antwort kann die Firewall eine neue Regel formulieren, die in Zukunft angewendet wird.
Mit einem Content-Filter können einige Personal Firewalls Inhalte von Datenpaketen überprüfen und beispielsweise ActiveX-Komponenten, JavaScript oder Werbebanner aus angeforderten HTML-Seiten herausfiltern. Auch Filter für E-Mail-Anhänge werden häufig angeboten.
Manche Firewalls verfügen über ein „Einbrucherkennungs- und -abwehrsystem“. Im Fachjargon wird dieses Intrusion Detection System oder kurz IDS genannt. Dieses kennt bestimmte Angriffsmuster, deren Auftreten gemeldet wird. Schadsoftware versucht oft die Filterung durch die Firewall zu umgehen. Dies könnte geschehen, indem die Schadsoftware den Dienst der Personal Firewall beendet. Ein möglicher Trick für Schadsoftware die Personal Firewall zu umgehen ist es, ein vertrauenswürdiges Programm (beispielsweise den Browser) zu starten und über dieses die Verbindung herzustellen. Ebenso kann versucht werden, ein vertrauenswürdiges Programm oder eine davon genutzte Bibliothek zu verändern oder sich als Erweiterung für ein solches Programm einzuschleusen. Manche Firewalls erkennen einige solcher Tricks und warnen den Benutzer.
Eine weitere mögliche Funktion ist das Sandboxing. Einem Programm, das in einer Sandbox läuft, werden Zugriffe auf bestimmte Systemresourcen verweigert. Es soll dadurch verhindert werden, dass eine kompromittierte Anwendung Schaden am Betriebssystem anrichtet.
Ein Rechner, der im Internet kommuniziert, hat in der Regel mehrere Verbindungen gleichzeitig aufgebaut. Eine solche Verbindung wiederum besteht aus mehreren einzelnen Datenpaketen, die bidirektional ausgetauscht werden. Zum Beispiel ist eine Abfrage des Namensdienstes in diesem Sinne eine Verbindung, das Abrufen von E-Mails eine andere. Ein Paketfilter, der Stateful Inspection (zustandsgesteuerte oder dynamische Paketfilterung) beherrscht, kann ein Datenpaket nach dem Kriterium durchlassen, ob dieses Teil einer bereits bestehenden, Verbindung – das heißt die Antwort auf ein vorangegangenes erlaubtes Datenpaket – ist. Man sagt, die Filterung wird durch den Zustand (bestehend oder nicht-bestehend) der Verbindung gesteuert. Daher rührt die Bezeichnung „zustandsgesteuerte Paketfilterung“. Eine von mehreren Möglichkeiten diese Funktion zu implementieren besteht darin, dass der Paketfilter, wenn er ein ausgehendes Datenpaket gemäß der vom Benutzer vorgegebenen Regel durchlässt, eine neue Regel generiert, die ein Paket, das die Eigenschaften einer zu erwartenden Antwort besitzt, ebenfalls erlaubt. Da diese Regel nicht starr vorgegeben ist, sondern vom Paketfilter dynamisch erzeugt wird, spricht man auch von „dynamischer Paketfilterung“.
Eine wichtige Funktion ist die Protokollierung des Vorgehens des Paketfilters in einer Datei, dem so genannten Logfile (kurz: Log). So ist es möglich, Fehler bei der Netzkonfiguration zu erkennen.
Ein Werkzeug um festzustellen, welche Rechner im Netz erreichbar sind, ist das Programm ping. Mit diesem kann man an einen anderen Rechner die Aufforderung senden, zu antworten, wenn er erreichbar ist. Ping sendet dazu das Datenpaket „Echo Request“ (Pakettyp 8 des Internet Control Message Protocols), die Antwort lautet „Echo Reply“. Einige Personal Firewalls bieten einen Stealth-Modus (von engl. stealth „die Heimlichkeit“) an. Bei diesem Modus werden ICMP-Echo-Request-Pakete und Anfragen auf ungenutzten Ports unbeantwortet verworfen. Normalerweise würde in einem solchen Fall eine Antwort erfolgen, dass der Rechner erreichbar, der Port jedoch nicht belegt ist. Durch das Ausbleiben der Antwort soll es dem Angreifer schwerer gemacht werden, Informationen über das System zu sammeln. Man bezeichnet diese Vorgangsweise als Security through Obscurity (Sicherheit durch Verschleierung).
Ein Fernwartungszugang kann zur Administration einer Personal Firewall auf einem Endgerät im Netzwerk durch den Netzadministrator dienen.
Abgrenzung zur Firewall
Eine Terminologie zum Thema gibt es nicht. Begriffe werden unterschiedlich, manchmal sogar widersprüchlich benutzt.
Eine Personal Firewall ist auf dem zu schützenden Host installiert. Manchmal wird die damit verbundene Möglichkeit anwendungsspezifisch zu filtern als zwingendes Merkmal einer Personal Firewall gesehen. Eine andere Sichtweise ist, dass es sich bei einer Personal Firewall um einen Paketfilter handelt, der mit dem Benutzer interagiert. Wieder andere möchten die Funktionsvielfalt mancher Produkte (siehe weitere Funktionen) in der Definition verankert sehen.
Häufig geben Hersteller ihrer Paketfiltersoftware oder deren Konfigurationstools den Namen Firewall. Beispiele dafür sind die Windows Firewall, die SuSEfirewall oder die IP Firewall (IPFW) von FreeBSD. In Handbüchern von Personal Firewalls und Computerzeitschriften werden die Bezeichnungen Firewall und Personal Firewall häufig synonym eingesetzt. Bei Heimanwendern haben sich die Begriffe Hardwarefirewall und Softwarefirewall eingebürgert. Hardwarefirewall bezeichnet ein externes Gerät, Softwarefirewall ist ein Synonym für Personal Firewall.
Viele Netzadministratoren lehnen diese Bezeichnungen ab: Auch auf einem externen Router läuft Software. Statt zwischen Hard- und Softwarefirewall sollte man daher zwischen Routern mit Paketfilterfunktion und Hostbasierenden Paketfiltern (HBPF) unterscheiden. Alle der oben genannten Produkte würden – nach Meinung vieler Netzadministratoren – nicht der Bezeichnung Firewall gerecht. Eine Firewall sei ein sorgfältig geplantes und ständig gewartetes System zur Trennung von Netzbereichen. „Eine Firewall ist ein Konzept“, heißt es, „und keine Software, die man sich einfach installieren kann.“ Die Umsetzung eines solchen Firewallkonzepts – die (physische) Firewall – ist standortspezifisch und besteht nur selten aus einer einzigen Komponente.
Elisabeth D. Zwicky (Lit.: 2001, S. 34) schreibt: „Die Welt ist voll von Leuten, die darauf bedacht sind, Ihnen weiszumachen, daß etwas keine Firewall ist. […] Wenn es dazu gedacht ist, die bösen Jungs von Ihrem Netzwerk fernzuhalten, dann ist es eine Firewall. Wenn es erfolgreich die bösen Jungs fernhält, ist es eine gute, wenn nicht, ist es eine schlechte Firewall. Das ist alles, was es dazu zu sagen gibt.“
Zur Abgrenzung der einzelen Wikipedia-Artikel zum Thema siehe: Firewall (Begriffsklärung)
Personal Firewall als Schutzmaßnahme
Personal Firewalls bilden oftmals nur einen Teil der Absicherung privater PCs mit Internetzugang. Eine Absolute Sicherheit ist wohl unerreichbar, auch eine PFW kann nicht vor allen "Gefahren" schützen. Wichtig ist, dass eine PFW niemals die alleinige Schutzmaßnahme sein sollte. Weitere Absicherungen sind Benutzung von Viren- und Spywarescannern, regelmäßiges Anfertigen von Backups, regelmäßiges Einspielen sicherheitsrelevanter Updates, sicherer Konfiguration von Webbrowser, E-Mail-Programm und Betriebssystem und generell ein vorsichtiger Umgang mit dem Internet.
Manchmal fällt im Zusammenhang mit Firewalls auch das Schlagwort „Risikokompensation“. Dahinter steckt die Annahme, Computeranwender würden sich leichtsinniger verhalten, wenn auf dem PC Sicherheitssoftware installiert ist.
Man kann Firewalls und deren Logs benutzen, um mehr über den durch den eigenen Rechner initiierten Netzverkehr zu lernen. Um jedoch ein weiter gehendes Verständnis zu erlangen, kann man gleichzeitig auch entsprechende Bücher oder Artikel zu Rate ziehen.
Schutz vor Angriffen von außen
Personal Firewalls können vor einigen automatisierten Angriffen schützen. So kann man beispielsweise den Sasser-Wurm mit den meisten Personal Firewalls erfolgreich abwehren. Diese Angriffe lassen sich oftmals jedoch auch durch eine restriktive Netzwerkkonfiguration verhindern, zum Beispiel indem ungenutzte Dienste abgeschaltet werden. Eine Personal Firewall kann aber den unerwünschen Zugriff auf Dienste filtern, die der Benutzer nicht beenden kann oder möchte, oder von denen er gar nicht bemerkt hat, dass sie laufen.
Die Personal Firewall kann auch selbst zum Angriffsziel werden. Manchmal werden Schwachstellen in Personal Firewalls bekannt, die es ermöglichen, zu schützende Systeme über das Netz anzugreifen. So wurden im März 2004 nicht rechtzeitig aktualisierte Versionen von BlackICE und RealSecure Opfer des Witty-Wurms.
Erkennung von Spyware und Backdoors
Erfahrene Benutzer können mithilfe einer Firewall auch Spyware, Trojanische Pferde oder Backdoors erkennen, die noch nicht in der Musterdatenbank eines Spywarescanners enthalten sind. Verlangt ein unbekanntes Programm Verbindung mit dem Internet, so ist zumindest ein Verdacht gegeben, und sollte näher geprüft werden. Ein kompromittiertes System kann aber auch durch eine Firewall nicht mehr gesichert werden. In diesem Fall ist eine gründliche Bereinigung der Infektion empfehlenswert.
Viele Schadprogramme auf dem Rechner versuchen Firewalls durch versteckte Verbindungen zu umgehen oder diese gleich ganz zu beenden. Ob diese Strategien von Erfolg gekrönt sind, hängt stark von der eingesetzten Firewall-Software ab. Der Chaos Computer Club Ulm zeigte in einem Vortrag über Personal Firewalls, dass keine der getesteten Personal Firewalls bestimmte Angriffe verhindern konnte.
Stealth-Modus
Kritisch wird der von manchen Firewall-Produkten angebotene Stealth-Modus (siehe weitere Funktionen) gesehen. Entgegen den Empfehlungen der RFCs verwirft der Paketfilter im Stealth-Modus alle Anfragen kommentarlos (DROP), anstatt mit ICMP-Kontrollnachrichten zu antworten. Wenn der Router des Providers auf Pings nicht mit „Destination unreachable“ antwortet, weiß ein Angreifer jedoch, dass der Rechner existiert. Ein Portscanner kann das Problem, dass Anfragen in einen Timeout laufen, umgehen: Er sendet die Anfragen parallel und sammelt dann alle Antworten. Kommt keine Antwort, wird der Zustand des entsprechenden Ports als „gefiltert“ angezeigt. Der Portscan wird ausgebremst aber nicht verhindert.
Reguläre Programme können durch diese Strategie behindert werden. Dies gilt beispielsweise für Internet-Anwendungen, die den Authentifizierungsdienst (auch auth-service oder ident genannt) nutzen. Manche Server wie z.B. IRC-Server bauen im Rahmen des Anmeldevorgangs eine Verbindung zum TCP-Port 113, dem auth-service des Client-Computers auf. Man spricht von einer ident-Anfrage. Diese dient Administratoren von Mehrbenutzersystemen dazu, festzustellen, welcher Benutzer das Service verwendet hat. Von Heimanwendern wird der Authentifizierungsdienst nicht benötigt. Wird die Ident-Anfrage jedoch nicht zurückgesetzt, sondern läuft auf Grund der Firewall in einen Timeout, kann es zu Problemen bei der Anmeldung bei Mail-, Web-, FTP-, oder IRC-Servern kommen.
Einige Personal Firewalls filtern im Stealth-Modus alle eingehenden Meldungen des „Internet Control Message Protocols“ (ICMP). Besonders der Meldungstyp 3 „Destination Unreachable“ transportiert jedoch wichtige Fehlermeldungen für gewollte Internetverbindungen. Wird ICMP von der Firewall gefiltert, kann es zu unerwarteten Netzproblemen kommen.
Interessanter Weise kann die Stategie, eingehende Anfragen nicht zu beantworten, zu höherem Datenverkehr führen. Viele Anwendungen stellen die Anfrage nämlich erneut, wenn sie keine Antwort oder Fehlermeldung erhalten.
Konfiguration
Die Schutzwirkung, die sich mithilfe einer Personal Firewall erzielen lässt, hängt zu einem hohen Grad von deren sachgemäßen Konfiguration ab.
Die Grundeinstellungen sind häufig nicht für den vom Benutzer gewünschten Einsatzzweck geeignet. So stellt beispielsweise ein Fernwartungszugang, wie er von Kerio 2 in der Standardkonfiguration angeboten wird, beim Einsatz der Personal Firewall auf einem Einzelplatzrechner mit Internetzugang nur ein unnötiges Risiko dar.
Die meisten, aber keineswegs alle Produkte blockieren in den Grundeinstellungen den Zugriff von außen, auf die vom Rechner angebotenen Netzwerkdienste. Bei der Tiny Personal Firewall muss diese Paketfilterfunktion erst vom Benutzer aktiviert werden, wenn sie benötigt wird.
Durch Benutzung der Rechtetrennung des Betriebssystems lässt sich die Schutzwirkung einer Desktop Firewall erhöhen. Wird zum Surfen im Internet ein eigeschränkter Benutzeraccount verwendet, hat Schadsoftware, die dabei unbeabsichtigt ausgeführt wird, ebenfalls nur eingeschränkte Rechte und ist somit nicht in der Lage, die Konfiguration der Personal Firewall zu manipulieren.
Viele Hersteller raten vom Betrieb von mehr als einer Personal Firewall auf einem Rechner ab, da sich diese gegenseitig behindern können, und daher die Schutzwirkung verloren geht. Setzt man eine andere Personal Firewall ein, empfielt Microsoft, die bei Windows XP Service Pack 2 mitgelieferte Windows Firewall deaktivieren.
Bei der Konfiguration einer Personal Firewall kann man nach verschiedenen Grundhaltungen vorgehen: „Erlaubt ist alles, was nicht ausdrücklich verboten ist“ und „Verboten ist alles, was nicht ausdrücklich erlaubt ist“. Letztere Grundhaltung gilt als sicherer, ist aber schwieriger umzusetzen.
Viele Programme sind dem unerfahrenen Benutzer unbekannt; es wirkt oft verwirrend, wenn für unbekannte Prozesse nach einer Regel verlangt wird. Manche dieser Prozesse aber gehören zum Betriebssystem und sind für Internetverbindungen notwendig. Bei der Definition der Regeln nach der zuletzt genannten Grundhaltung gibt man zunächst so wenig wie möglich frei. Funktioniert danach eine Software nicht mehr wie erwartet, so durchsucht man das Log nach gesperrten Verbindungen und gibt diese frei. Bei unbekannten Prozessen wird man nach weiteren Informationen forschen, um sich zu klären, wozu dieser Prozess gehört.
Personal Firewall Software
Windows Firewall
Die Windows Firewall ist Bestandteil von Windows XP. Sie wird bei der Installation des Service Packs 2 oder bei der Windowsinstallation von einem Datenträger mit integriertem (engl.: slipstreamed) Service Pack 2 automatisch aktiviert. Sie verwirft eingehende Verbindungen und fragt beim Start von Programmen, die Server-Dienste anbieten, bei Benutzern, die über Administratorrechte verfügen, nach, ob eingehende Verbindungen zu den von diesen Programmen geöffneten Ports erlaubt werden sollen. Sie kann über das Sicherheitscenter – der ebenfalls mit Service Pack 2 hinzugekommenen zentralen Verwaltungsstelle für Personal Firewalls und Virenscanner – oder über die Datei Namens NETFW.INF konfiguriert werden. Dort kann man in zwei Profilen Ausnahmelisten für bestimmte Ports und Programme erstellen. Nach außen gerichtete Verbindungen kontrolliert die Windows Firewall nicht.
In Standardkonfiguration hat die Windows Firewall einen sicherheitskritischen Fehler; dieser wurde mit der Korrektur vom 14. Dezember 2004 beseitigt.
Ihr Vorgänger, die Internet Connection Firewall (ICF) ist ein reiner Paketfilter. In den Grundeinstellungen von Windows XP ist die ICF nicht aktiviert.
ZoneAlarm
Von ZoneAlarm gibt es eine für Privatanwender kostenlose Version und die kommerzielle Version ZoneAlarm Pro, die einen größeren Funktionsumfang bietet. Der Name kommt daher, dass die Personal Firewall getrennte Sicherheitseinstellungen für zwei verschiedene Zonen – eine für das lokale Netz und eine für das Internet – erlaubt. Der Schwerpunkt des Produkts liegt auf einfacher Installation und Konfiguration.
Der Hersteller der Desktop-Firewall, die Firma „Zone Labs“ wurde 1997 gegründet. Anfang 2004 wurde sie um 205 Millionen Dollar von der Firma „Check Point“, einem bekannten Hersteller von Firewall- und VPN-Produkten, aufgekauft.
Kerio Personal Firewall
Die Kerio Personal Firewall entstammt der Tiny Personal Firewall und heißt seit der Version 2.0 Kerio. Kerio bietet sein Produkt für Heimanwender ebenfalls kostenlos an. Bei der Installation erhält man zunächst eine Vollversion, die für 30 Tage getestet werden kann. Danach kann die Software als limitierte Edition weiter genutzt werden. Kerio unterstützt allerdings seit Version 4.2 die Betriebssysteme Windows 98 und ME nicht mehr.
Viele Anwender schätzen diese Personal Firewall wegen ihrer hohen Konfigurierbarkeit. Einstellungen können sehr detailliert getroffen werden. Dies bedeutet auch einen hohen Lerneffekt für den Nutzer. Die kostenlose Version von Kerio wird vom BSI empfohlen.
Norton Personal Firewall
Die Norton Personal Firewall ist Bestandteil des kommerziellen Softwarepakets Norton Internet Security. Dieses enthält neben der Desktop-Firewall auch ein Antivirenprogramm und einen Spamfilter. Historischer Vorläufer der Norton Personal Firewall ist die Personal Firewall AtGuard von WRQ, die als Freeware zur Verfügung stand. Symantec kaufte 1999 AtGuard von WRQ. Der Name Norton wird von Symantec als Konsumentenmarke benutzt. Er geht auf den Hersteller des Norton Commanders, die Firma Peter Norton Computing zurück, die 1990 von Symantec gekauft wurde.
Im Usenet berichten Anwender, dass die Software einen hohen Ressourcenverbrauch hat. Auch von Schwiegkeiten bei der Deinstallation wird häufig berichtet.
Weitere bekannte Personal Firewalls für Windows
- Sygate Personal Firewall
- Outpost
Linux und andere Unix-ähnliche Betriebssysteme
Auch auf Unix und Unix-Derivaten ist es üblich, Einzelplatzrechner durch hostbasierte Paketfilter zu schützen. Viele weitere für Personal Firewalls typische Funktionen lassen sich mit Software hervorrufen, die für Unix erhältlich ist.
FreeBSD bringt mit dem Skript "rc.firewall" einen vorgefertigten Regelsatz für den Paketfilter IPFirewall (ipfw) mit. Für den Schutz eines an Einzelplatzrechners mit Internetzugang kann das rc.firewall-Skript mit der Option „client“ aufgerufen werden. Im Benuzterhandbuch des Betriebssystems findet man auch Beipielkonfigurationen für den hostbasierenden Einsatz der Paketfileralternativen IPFilter (ipf) und pf. Benutzer, die Konfigurationswerkzeuge mit graphischer Benutzeroberläche bevorzugen, finden einige wenige Programme in den Ports: Die QT-Firewall (qtfw) ist ein Frontend für ipfw. Anwendungsbasiertes Filtern ist mit den unter FreeBSD zur Verfügung stehenden Paketfiltern nicht möglich.
Mac OS X enthält ebenfalls den Paketfilter ipfw. Seit Mac OS X 10.2 (Jaguar) ist auch ein graphisches Frontend für ipfw im Betriebssystem enthalten.
Bei dem in Linux enthaltene Paketfilter netfilter ist anwendungsbasiertes Filtern möglich. Als graphisches Front-End für netfilter gibt es Programme wie KMyFirewall und Guarddog für KDE und Firestarter für den GNOME-Desktop. Firestarter ist übersichtlich und einfach zu bedienen, erlaubt aber dennoch umfangreiche Einstellmöglichkeiten, wie das Filtern bestimmter ICMP-Typen, oder das Zurückweisen von Paketen mit einer Fehlermeldung. Anwender können selbst Module schreiben, um das Programm zu erweitern. Das Programm TuxGuardian beruht auf den Möglichkeiten des Linux-Kernels 2.6.10. Es erlaubt Anwendungskontrolle und kann mit dem Benutzer über Pop-Up-Fenster interagieren (siehe Lernmodus).
Der graphische Regelgenerator „Firewall Builder“ (Fwbuilder) läuft auf mehreren Betriebsystemen und unterstützt verschiedene Paketfilter. Obwohl FwBuilder vorwiegend für den professionellen Einsatz gedacht ist, existieren HowTos zum Einrichten einer Personal Firewall mithilfe dieses Programms.
Literatur
- Zwicky, Cooper, Chapman, Einrichten von Internet Firewalls, O'Reilly 2001, ISBN 3897211696