Eine Firewall-Konfiguration
besteht meist aus mehreren Komponenten: ein oder mehrere Filter
sowie ein oder mehrere Gateways. Paketfilterung ist eine billige Möglichkeit, Gateways zu
schützen. Sie kann mit einem Router, welcher entsprechende Mechanismen unterstützt oder mit
spezieller Software realisiert werden. Für die Paketfilterung eignen sich "normale" Router,
da
auf diesen dienötigen Mechanismen meist schon standardmässig implementiert sind. Zudem
braucht man für den Anschluss ans Internet meistens sowieso einen Router
Wozu braucht
man Paketfilterung?
Mit Paketfilterung
kann der Datentransfer gesteuert, zugelassen oder unterbunden werden.
Dazu werden folgende Kriterien verwendet:
- Quelladresse, von der die Daten (angeblich)
stammen.
- Zieladresse, zu der die Daten gelangen
sollen.
- verwendete Sitzungs- und Anwendungsprotokolle.
Die Daten selbst
werden meist nicht ausgewertet. So lassen sich Filterregeln definieren, welche
z.B. folgende Bedingungen erfüllen:
- Weise jeden Versuch ab, eine Telnet-Verbindung
von aussen aufzubauen.
- Ermögliche jedem, uns mit E-Mail (SMTP)
erreichen zu können.
Diese Regeln lassen
sich relativ einfach realisieren. Schwieriger wird es wenn man mehrfache
Kombinationen von Regeln ausdrücken will welche sogar voneinander abhängig sein können.
Sinvollerweise setzt man dann ein entsprechendes Konfigurationswerkzeug (z.B. vom
Routerhersteller) ein.
Folgendes Beispiel ist mit Paketfilterung jedoch nicht realisierbar, da ein Paketfilter keine
Benutzer identifizieren kann:
- Ein bestimmter Benutzer kann sich von aussen
mittels Telnet anmelden, alle anderen
nicht.
Gewisse Schutzmechanismen
lassen sich nur durch Router mit Paketfilterung realisieren. Dazu
kommt, dass sich der Router dabei an einer bestimmten Stelle im Netz befinden muss. So ist es
beispielsweise sinnvoll, alle Pakete mit interner Quelladresse abzuweisen. Dadurch können
Pakete eines Angreifers, welcher als Quelladresse eine interne Adresse angegeben hat, leicht
erkannt und eliminiert werden. Der Router alleine weiss nämlich, an welcher physikalischen
Netzschnittstelle das externe Netz (z.B. Internet) bzw. das interne Netz angeschlossen ist.
Vorteile der
Paketfilterung
Einfacher Schutz
für ein ganzes Netz durch einen einzigen Überwachungsrouter:
Ein geschickt plazierter Router kann ein ganzes Netz schützen, wenn dieser
als einziger
Zugang zum Internet wirkt. Dabei ist die Netzsicherheit unabhängig von der Grösse des
Netzes.
Einfache Handhabung
resp. Transparenz für Anwender:
Für den Einsatz eines Paketfilters sind keine Software-Anpassungen und
Konfigurationen auf den Client-Rechnern nötig. Eine spezielle Schulung der Anwender
und eine etwaige Anmeldeprozedur fallen auch weg. Der Paketfilter "erscheint" dem
Anwender transparent, so nimmt er diesen höchstens im Falle eine kritischen Prozedur
wahr.
Standardmässige
Implementation der Filtermechanismen:
In den meisten Hard- und Software-Routern ist die Funktionalität der Paketfilterung
bereits standardmässig enthalten. So lässt sich ein bereits im Betrieb stehender Router
problemlos zu einem Paketfilter "erweitern".
Nachteile der
Paketfilterung
Implementation
der Paketfilter:
- Paketfilterregeln sind meist schwer formulierbar.
- Paketfilterregeln sind oft nur mühsam
zu testen.
- Paketfilterfunktionen sind unvollständig
und erschweren oder verunmöglichen oft die
Realisierung von bestimmten Filtern.
- Ein fehlerhaftes Paketfilterungsprogramm
kann Pakete passieren lassen, welche es
hätte sperren müssen.
Paketfilterung
ist nicht für alle Protokolle geeignet:
Die r-Befehle von BSD-UNIX sowie NFS und NIS/YP sind sicherheitskritische
Protokolle, welche mit Paketfilterung nicht sicher genug abgefangen werden können.
Aktionen, welche
normale Router mit gegebener Information nicht ausführen können:
Pakete geben Auskunft über ihren Ursprungsrechner. Von welchem Benutzer
das
Paket kommt, lässt sich jedoch nicht ausfindig machen. Weiter ist der verwendete Port
ersichtlich, aber nicht die Anwendung, zu welcher das Paket gehört. Somit lässt sich
ein bestimmter Dienst nur über dessen Portnummer kontrollieren. Und diese
Portbelegung kann wiederum manipuliert werden.
Protokollierung
Wie bei allen Überwachungsaktivitäten
werden auch bei der Paketfilterung Ereignisse
protokolliert. Was wie zu protokollieren ist, entscheidet der Systemadministrator selbst. So
kann er z.B. nur die potentiell "bösartigen" oder alle Pakete protokollieren. Hier gilt
es ein
vernünftiges Mass zu finden. Anhand der Protokolle ist es z.B. möglich, sich einen Überblick
über eingehende oder abgehende Verbindungen zu verschaffen.
Antwort auf
ICMP-Fehlermeldungen
ICMP (Internet
Control Message Protocol) dient dazu, Hosts günstigere Routen zu einem Ziel
bekanntzugeben, über Routing-Probleme zu informieren oder Verbindungen bei Problemen im
Netz abzubrechen
Es stehen folgende zwei Gruppen von ICMP-Fehlermeldungen zur Auswahl:
- Das Ziel ist nicht erreichbar: "host
unreachable" oder "network unreachable".
- Das Ziel ist aus administrativen Gründen
nicht erreichbar: "host administratively
unreachable" oder "network administratively unreachable".
Es gibt mehrere
Punkte, die zu beachten sind bei der Entscheidung, ob der Überwachungs-
Router ICMP-Fehlermeldungen zurückgibt oder nicht:
- Welche Meldungen werden zurückgeschickt?
- Ist der Zusatzaufwand akzeptabel, welcher
beim Versenden der Fehlermeldungen
entsteht?
- Erhalten Angreifer durch die Fehlermeldungen
zu viele Informationen über Ihr System?
Wo werden Paketfilter
plaziert?
Grundsätzlich
sollte die Paketfilterung überall dort eingesetzt werden, wo es möglich ist. Die
mögliche Anzahl Stellen im Netz hängt aber von der gewählten Firewall-Architektur ab.
Bei der
Architektur mit überwachtem Host und der Architektur mit überwachtem Teilnetz liegt die
Lösung auf der Hand, da sowieso nur ein Router vorhanden ist. Sobald jedoch mehrere Router
vorhanden sind, kann die Paketfilterung auch auf mehreren Routern vorgenommen werden. Es
empfiehlt sich, die Paketfilterung an möglichst vielen Orten zu nutzen. Damit findet das Prinzip
der minimalen Zugriffsrechte Anwendung: alles was nicht explizit erlaubt ist, ist verboten.