Paketfilter
Zur Navigation springen
Zur Suche springen
Grundsätzliches
- Ein Paketfilter ist eine Anwendung oder Software, die den ein- und ausgehenden Datenverkehr in einem Rechnernetz filtert.
- Dies dient in der Regel dem Schutz des Netzes vor Angreifern.
- Ebenso wichtig wie der Schutz gegen Angreifer von Außen ist der Schutz gegen ungewollt ausgehende Pakete
- Damit kann beispielsweise erschwert werden, dass der eigene Rechner ungewollt und unbemerkt Viren im Internet verbreitet.
- Ein Paketfilter kann Teil einer Firewall sein.
Verwendung
- Paketfilter werden verwendet, um das Konzept einer Firewall umzusetzen.
- Auf Routern kommen sie zum Einsatz um sogenannte Ingress-Filter zu implementieren.
- Mit solchen Filtern wird verhindert, dass Datenpakete aus oder in ein Netz gesendet werden, die ungültige Absender- oder Ziel-Adressen beinhalten.
- Ist zum Beispiel an einer Router-Schnittstelle nur das Netz 10.1.1.0/24 angeschlossen
- Und es kommt ein Datenpaket mit der Absender-Adresse 172.16.1.42 aus diesem Netz, sollte der Router das Paket verwerfen.
- Es liegt entweder ein Konfigurationsfehler vor oder ein Angreifer versucht seine Absender-Adresse zu fälschen.
- Auch Multicast- und Broadcast-Absender-Adressen lassen sich so filtern.
- Alternativ zu Paketfiltern steht mit Unicast Reverse Path Forwarding hier eine alternative Möglichkeit zur Verfügung.
Funktionsweise
- Die Daten werden in einem Netz von dem sendenden Host in Datenpakete verpackt und versendet.
- Jedes Paket, das den Paketfilter passieren will, wird untersucht.
- Anhand der in jedem Paket vorhandenen Daten, wie Absender- und Empfänger-Adresse, entscheidet der Paketfilter aufgrund von Filterregeln, was mit diesem Paket geschieht.
- Ein unzulässiges Paket wird normalerweise folgendermassen behandelt
- REJECT - Das Paket wird verworfen der Absender bekommt eine ICMP Nachricht
- DROP - Das Paket wird verworfen der Absender bekommt keine ICMP Nachricht
- ACCEPT - Das Paket darf pasieren.
Paketfilterbeispiel
- Ein Paketfilter ist in der Regel auch ein Router
- Es prüft meist die Absender IP, Absender Port sowie Ziel IP und Ziel Port.
- Diese Informationen werden nur mit den Regeln von oben nach unten verglichen.
- Wenn eine Regel zutrifft, wird ein Ziel meist ACCEPT oder DROP ausgewählt
- Je nachdem darf das Paket das den Paketfilter passieren oder nicht.
- Wenn keine Regel auf ein Paket zutrifft, zieht die Default Policy
Konzepte
- Es gibt zwei Arten von Firewall Konzepten
- Man erlaubt gewissen Paketen die Firewall zu passieren (Default Policy Drop)
- Man verbietet gewissen Paketen die Firewall zu passieren (Default Policy ACCEPT)
- Je nach Situation machen beide Sinn
Default Policy Drop
- Man stellt Anfangs die Default Policy auf Drop
- Danach muss man sich sehr genau überlegen welche Pakete man durchlassen will
- Das Konzept ist sicherer das nur das passiert was der Admin zulässt
- Auf der anderen Seite muss man genau wissen wie Protokolle funktionieren
- Eine zu restriktive Firewall kann auch den Unmut der Benutzer hervor rufen.
Default Policy ACCEPT
- Man stellt Anfangs die Default Policy auf ACCEPT
- Danach verbietet man gewisse Pakete
- So wird beispielsweise häufig der SSH Port 22 geblockt, weil er oft angegriffen wird.
- Das Konzept ist unsicherer da man nur gewisse Sachen einschränkt.
- Sie ist einfacher zu warten.
- Würde sie eher nicht empfehlen.
Implementierungen von Paketfiltern
- IPFilter portabler Paketfilter für Solaris, FreeBSD u. a.
- ipfw Paketfilter von FreeBSD und Mac OS X
- ipfwadm (Linux 2.0, obsolet)
- ipchains (Linux 2.2, obsolet)
- ip(6)tables (Linux ab 2.4)
- nftables (Linux ab 3.13)
- pf Paketfilter von allen BSD-Derivaten, vornehmlich OpenBSD, aber inzwischen auch FreeBSD und NetBSD