Mit einem Ingress-Filter werden, allgemein formuliert, Netze vor unerwünschtem Eingangsdatenverkehr geschützt. Im derzeitigen Sprachgebrauch ist mit Ingress-Filter speziell das Blockieren von Internet-Paketen mit gefälschten oder fehlerhaften Absenderadressen gemeint.
Funktionsweise
Ein auf einem Router oder einer Firewall implementierter Ingress-Filter verhindert, dass IP-Pakete mit gefälschter Absenderadresse vom Außenrand eines Netzes ins Zentrum gelangen. Ziel ist es also, Pakete abzufangen, bevor sie in das eigentliche Netz gelangen. Voraussetzung ist, dass Router oder Firewalls alle externen Netze kennen, die sie an das Zentrum anschließen. Diese Vorbedingung ist bei korrekt eingerichteter Routingtabelle erfüllt. Ein Ingress-Filter lässt nur IP-Pakete mit zulässiger Absenderadresse durch. Alle anderen werden verworfen. Eine ähnliche Funktion ist mit Unicast-Reverse-Path-Forwarding-Funktionalität erreichbar.
Beispiel: Ein Dienstleister schließt das Netz 171.17.128.0/18 an das Internet an. Er weiß damit, dass sämtliche aus diesem externen Netz eintreffenden IP-Pakete eine Absenderadresse aus diesem Adressbereich haben müssen. Trifft jetzt aus diesem Netz ein Paket mit beispielsweise der Absenderadresse 192.168.130.7 ein, so liegt entweder ein Konfigurationsfehler oder ein Angriff unter Fälschung der IP-Absende-Adresse vor. In beiden Fällen ist es sinnvoll, dieses Paket zu verwerfen, bevor es weiter vermittelt wird.
Einrichtung
Ingress-Filter können statisch eingerichtet werden, indem manuell alle externen Netze der Firma in eine Zugriffsliste (access list) aufgenommen werden, oder sie können automatisch aus der Routingtabelle generiert werden (Reverse Path Filtering). Fehlerhaft konfigurierte Filter können dazu führen, dass legitime IP-Pakete blockiert werden.
Die Firewall von OpenBSD, pf, erlaubt eine einfache Einrichtung eines solchen Filters. Mit dieser Konfigurationszeile werden Pakete mit gefälschter Absenderadresse auf dem Netzwerkinterface em0 verworfen:
antispoof for em0
Einschränkungen
Ingress-Filter bieten nur begrenzten Schutz. Gegen Angriffe mit einer zulässigen IP-Adresse sind sie völlig wirkungslos, ebenso bei gefälschten IP-Adressen aus dem Subnetz des Angreifers. Geht etwa eine Attacke von der IP-Adresse 171.17.130.5 aus, so würden Pakete mit der gefälschten IP-Adresse 171.17.130.99 unbeanstandet die Ingress-Filter passieren. Wegen derartiger Einschränkungen und dem in manchen Fällen aufwendigen Betrieb werden Ingress-Filter in der Praxis nur selten eingesetzt. Es gibt allerdings auch Angriffsvarianten, vor denen Ingress-Filter wirksamen Schutz bieten. Ein Beispiel hierfür ist die DNS Amplification Attack.
Der umgekehrte Weg, also vom Netzzentrum in Richtung Außenbereich, kann mit einem Ingress-Filter allgemein nicht abgesichert werden, da nicht zwischen gültigen und ungültigen Absenderadressen unterschieden werden kann. Es ist aber möglich, durch Filter den Spezialfall zu verhindern, dass vom Netzzentrum Pakete mit der eigenen, externen Absenderadresse eintreffen.
Abhängig von der Plattform, auf der Paketfilter zum Einsatz kommen, erfolgt deren Verarbeitung in hardware- oder softwarebasiert durch die Geräte-CPU. Bei einer softwarebasierten Verarbeitung können Latenzzeiten auftreten, d. h. zulässige Pakete bearbeitungsbedingt verzögert werden. Bei hardwarebasierten Paketfiltern erfolgt die Entscheidung der Zu-/Unzulässigkeit in Quasi-Echtzeit. Allerdings kann die Größe an in Hardware verarbeiteter Paketfilter-Einträgen begrenzt sein, dies in den Herstellerspezifikationen beschrieben.
Literatur
Weblinks
- IETF Best Current Practice 38, englisch