Hardwarefirewall (Router) Begriffserklärung (Teil 1)
Mittlerweile ist ein Router eine Standardhardware auch im privaten Umfeld. Router werden in Verbindung mit einem DSL-Vertrag teilweise kostenlos zur Verfügung gestellt.
Doch was ist ein Router und wie unterscheiden sich die verschiedenen Typen? Wie ist der Begriff „Firewall“ in Verbindung mit einem Router zu verstehen?
Ich werde versuchen, diesen ersten Teil so einfach wie möglich zu beschreiben. Deshalb werde ich (so weit es geht) auf englische Fachbegriffe und Abkürzungen verzichten.
Ein Router wurde anfangs eingesetzt, um eine zentrale Verbindungsstelle (Gateway) zwischen einem lokalen, privaten Netzwerk und einem öffentlichen Netzwerk (Internet) zu bilden. Der Router hatte also nur die Aufgabe, Netwerkpakete zwischen diesen Netzwerken zu vermitteln (routen). Er wurde als „Accessrouter“ bezeichnet.
Man erkannte schnell, dass das Gefahrenpotential zwischen diesen Netzen sehr unterschiedlich ist.
Ausserdem bildet der Router die zentrale „Grenzstation“. Es war also aus Kosten- und Verwaltungsgründen heraus sinnvoll an dieser zentralen Stelle ein Regelwerk zu implementieren.
Es wurden deshalb Techniken entwickelt, die prüften, welche Daten- oder Netzwerkpakete in das interne Netzwerk durchgelassen werden dürfen.
Aus diesem Sicherheitsgedanken heraus entstand die erste Firewalltechnik – der Paketfilter-Router.
Paketfilter:
Dieser Paketfilter kontrollierte nur die „Paketheader“ also die reinen Verbindungsdaten, aber nicht den Inhalt der Pakete.
Der Paketfilter kontrollierte also folgende Daten:
Quell- und Zieladresse
Quell- und Zielport
Aufgrund dieser Daten wurden Pakete erlaubt oder verboten.
Diese Technik war aber nicht in der Lage den Status einer Verbindung zu bewerten. Ausserdem macht der Datenheader nur einen Bruchteil des Netzwerkpaketes aus. Jedes Paket wurde individuell bewertet. Zusammenhängende Verbindungen wurden nicht erkannt.
Paketfilter waren also recht unflexibel und auch unsicher. Konnten hier schliesslich nur Regeln auf Basis von Adressen (IP-Adressen) und Ports realisiert werden.
Aufgrund dieser Schwachstellen wurde der dynamische Paketfilter entwickelt. Der dynamische Paketfilter bildet die erste Entwicklungsstufe des „zustandsabhängigen Paketfilter“.
Dynamischer Paketfilter:
Ohne jetzt auf die genauen Zusammenhänge von UDP/TCP-Paketen einzugehen, kann man der Einfachheit halber sagen, dass ein dynamischer Paketfilter erkennen kann, ob es sich um eine Antwort auf eine Anfrage handelt.
Ein dynamischer Paketfilter besitzt also eine gewisse „Intelligenz“.
Er führt dazu eine Liste mit folgenden Angaben:
Quell- und Zieladresse
Quell- und Zielport
Zeitpunkt
Sendet ein Client aus dem zu schützenden Netzwerk eine Anfrage, merkt sich der dynamische Paketfilter diese Anfrage für einen gewissen Zeitraum. Erreicht den Paketfilter dann ein Paket, kann er aufgrund der gespeicherten Verbindungstabelle sehen, ob es sich dabei um ein Antwortpaket handelt. Ist dies der Fall, wird das Paket durchgelassen.
Die Weiterentwicklung des dynamischen Paketfilters ist der zustandsabhängige Paketfilter. Er bildet die zweite Entwicklungsstufe des dynamischen Paketfilters.
Zustandsabhängiger Paketfilter:
Der zustandsabhängige Paketfilter hat mehrere Bezeichnungen:
Zustandsabhängiger Paketfilter
Zustandsabhängige Firewall
SPI-Firewall (Stateful Paket Inspection)
Stateful Inspection Firewall
Alle Begriffe deuten auf dieselbe Technik hin.
Der zustandsabhängige Paketfilter erkennt zusätzlich noch den Zustand der Verbindung. Er kann zwischen folgenden Verbindungszuständen unterscheiden:
Verbindungsaufbau
Normale Datenübertragung
Verbindungsabbau
Diese Verbindungszustände werden in einer erweiterten Tabelle gespeichert (Zustandstabelle). Inhalte dieser Tabellen sind:
Identifikationsnummer der Verbindung
Quell- und Zieladresse des ersten Pakets
Schnittstelleninformation (Schnittstelle der ersten Verbindung und der ersten Weiterleitung)
Der zustandsabhängige Paketfilter bietet demnach folgende Vorteile:
Schutz vor fragmentierten Paketen
Schutz vor SYN-Angriffen
Verbot für bestimmte Kommandos (PUT-Kommando bei FTP)
Sperrung von aktiven Elementen (Java, Scripte, ActiveX)
Aber auch diese Entwicklung bietet noch keinen vollständigen Schutz. Der grösste Nachteil ist, dass keine logische Netzwerktrennung vorliegt.
Diese Nachteile beseitigen Bastionhosts bzw. Gateways. Sie bauen eine getrennte Verbindung zum unsicheren Netzwerk auf.
Auf diese Technik werde ich in einem zweiten Teil eingehen.
Frank Richter