Stateful Firewall

Stateful Firewall

Unter Stateful Packet Inspection (SPI) versteht man eine dynamische Paketfiltertechnik, bei der jedes Datenpaket einer bestimmten aktiven Session zugeordnet wird.

Die Datenpakete werden analysiert und der Verbindungsstatus wird in die Entscheidung einbezogen. Bei dieser Technik, die in Firewalls eingesetzt wird, werden die Datenpakete während der Übertragung auf der Vermittlungsschicht (3. Schicht des OSI-Modelles) analysiert und in dynamischen Zustandstabellen gespeichert. Auf Basis des Vergleichs von mehreren Datenpaketen und durch die Ermittlung der Korrelation zwischen zusammengehörenden Datenpaketen werden die Entscheidungen für die Weiterleitung der Datenpakete getroffen. Datenpakete, die nicht bestimmten Kriterien zugeordnet werden können oder eventuell zu einer DoS-Attacke gehören, werden verworfen. Firewalls mit SPI-Technik sind daher in sicherheitsrelevanten Anwendungen den reinen Paketfilter-Firewalls überlegen.

Die Firma Check Point Software Technologies Ltd. nimmt für sich in Anspruch, diese Technik erfunden und patentiert zu haben (U.S. Patent # 5,606,668).

Stateful Inspection: die Eigenschaften ausgehender Datenpakete werden in einer Statustabelle gespeichert. Mit dieser werden eingehende Datenpakete verglichen

Inhaltsverzeichnis

Funktionsweise

Kommuniziert ein Rechner A mit einem Rechner B über einen einfachen Paketfilter, so muss dieser in seinem Regelwerk zwei Verbindungen erlauben:

  • Quelle A nach Ziel B mit Dienst HTTP (für die Anfrage, z. B. „Schicke mir Webseite www.beispiel.de“)
  • Quelle B nach Ziel A mit Dienst HTTP (für die Antwortpakete, in diesem Beispiel der Inhalt von www.beispiel.de)

Dadurch ist das Regelwerk unsicherer als eigentlich nötig, da B jederzeit an A senden darf, auch wenn A gar keine Webseite angefordert hat (Bei Netfilter kann mit Hilfe des 'Sync-Flags' verhindert werden, dass B zu A eine Verbindung aufbaut).

Bei der Zustandsgesteuerten Filterung wird nur eine Regel benötigt (bzw. die zweite wird implizit hinzugefügt):

  • Quelle A nach Ziel B

Der Paketfilter merkt sich, wenn Rechner A mit Rechner B kommuniziert und erlaubt nur dann Antworten darauf von Rechner B an Rechner A. Rechner B kann dadurch nicht ohne Anforderung von A beginnen.

Die Regeln für Antwortpakete werden dynamisch erzeugt und werden nach Eintreffen der Antwort oder nach einem Timeout automatisch gelöscht.

Noch weitergehende Systeme prüfen zusätzlich, ob ein Paket zu einem bestimmten Zeitpunkt in der Kommunikation überhaupt erlaubt ist (zum Beispiel weitere Pakete schicken, obwohl der andere Teilnehmer die Kommunikation bereits abgeschlossen hat).

Stateful Inspection bei UDP-Paketen

Auf den ersten Blick sieht eine Stateful Packet Inspection bei UDP-Paketen wie ein Widerspruch aus, da UDP im Gegensatz zu TCP zustandsfrei arbeitet. Die meisten Implementierungen (z. B. Linux-Netfilter) behandeln UDP trotzdem als stateful, in dem Sinne, dass beim Versenden einer Anforderung per UDP für kurze Zeit eine dynamische Firewall-Regel für die Antwortpakete erzeugt wird. Im Beispiel DNS-Anfragen werden dadurch nur Antwortpakete von den Nameservern erlaubt, die man selbst gefragt hat.

Manche Programme – z. B. Skype – benutzen dies, um durch Firewalls Point-Point-Verbindungen aufzubauen. Beide Teilnehmer erfahren vom Skype-Server auf welcher IP-Adresse und welchem Port Skype bei der Gegenseite arbeitet. Dann schicken beide ein UDP-Paket an die Gegenseite. Dort werden diese Pakete beim Eintreffen zwar verworfen, weil keine Input-Regel existiert, erzeugen aber auf der Firewall des ausgehenden Rechners eine Regel, die ab dann 'Antworten' erlaubt. Danach können beide Seiten miteinander kommunizieren. Mit TCP würde das nicht funktionieren, da die Firewall aufgrund von Sequencenummern echte Antwortpakete erkennen kann.

Stateful Inspection bei ICMP

Wer pingen will, aber nicht auf Ping antworten möchte, definiert nur eine Outputregel für ICMP, nicht aber eine Inputregel. Dann kann er selbst pingen, erlaubt aber keine Antworten auf eingehende Pings.

Stateful Inspection bei FTP

FTP ist problematisch, wenn es im ursprünglichen asynchronen Modus ausgeführt wird. Dann werden zwei Ports, 'ftp' und 'ftp-data' (21 und 20), verwendet. Über 'ftp' werden Anforderungen geschickt, die über 'ftp-data' beantwortet werden. Für Netfilter gibt es ein Modul, welches das Zusammenspiel beider Ports beherrscht.

Timeout

Sowohl TCP- als auch UDP-Verbindungen haben bei Stateful Packet Inspection immer einen zugewiesenen Timeout. Bei UDP, weil nicht erkennbar ist, wenn eine Verbindung beendet worden ist; bei TCP, weil es passieren kann, dass Verbindungen nicht ordnungsgemäß abgebaut werden. Der UDP-Timeout liegt üblicherweise im Bereich 20–40 Sekunden, bei TCP 15–60 Minuten.

Ist der Timeout nicht lang genug und werden legitime Verbindungen dadurch von der Firewall beendet, gibt es zwei Lösungsmöglichkeiten. Eine Verlängerung des Timeouts hilft zwar, erhöht aber auch den Speicherbedarf des Systems und reduziert die Sicherheit. Die bevorzugte Methode sollte daher der Einsatz von Keep-Alive-Paketen sein. Diese lassen sich in manchen Applikationen wie SSH-Clients oder auch im Betriebssystem konfigurieren.

Setzen des TCP-Keep-Alives unter Linux auf alle 120 Sekunden:

echo 120 > /proc/sys/net/ipv4/tcp_keepalive_time

Implementierungen von Stateful Firewalls


Wikimedia Foundation.

Игры ⚽ Нужно решить контрольную?

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Stateful firewall — In computing, a stateful firewall (any firewall that performs stateful packet inspection (SPI) or stateful inspection) is a firewall that keeps track of the state of network connections (such as TCP streams, UDP communication) traveling across it …   Wikipedia

  • FireWall-1 — is a firewall product created by Check Point Software Technologies Ltd. The FireWall 1 is a stateful firewall which also filters traffic by inspecting the application layer. It was the first commercially available software firewall to use… …   Wikipedia

  • Firewall (computing) — This article is about the network security device. For other uses, see Firewall. An illustration of where a firewall would be located in a network …   Wikipedia

  • Firewall — A firewall is an integrated collection of security measures designed to prevent unauthorized electronic access to a networked computer system. It is also a device or set of devices configured to permit, deny, encrypt, decrypt, or proxy all… …   Wikipedia

  • FireWall-1 — FireWall 1/VPN 1 ist eine kommerzielle Firewall Software des israelischen Softwareherstellers Check Point. Es handelt sich um eine SPI Firewall, das bedeutet der Datenverkehr wird nicht nur anhand der Informationen auf OSI Ebene 3–4, sondern… …   Deutsch Wikipedia

  • Firewall-1 — FireWall 1/VPN 1 ist eine kommerzielle Firewall Software des israelischen Softwareherstellers Check Point. Es handelt sich um eine SPI Firewall, das bedeutet der Datenverkehr wird nicht nur anhand der Informationen auf OSI Ebene 3–4, sondern… …   Deutsch Wikipedia

  • Firewall-1/vpn-1 — ist eine kommerzielle Firewall Software des israelischen Softwareherstellers Check Point. Es handelt sich um eine SPI Firewall, das bedeutet der Datenverkehr wird nicht nur anhand der Informationen auf OSI Ebene 3–4, sondern explizit auch auf der …   Deutsch Wikipedia

  • Firewall — Eine Firewall (von englisch firewall [ˈfaɪəwɔːl] „die Brandmauer“) ist eine Software, weiter gefasst auch ein System mit einer bestimmten Funktion[1] und ein Teilaspekt[2] eines Sicherheitskonzepts. Die Firewall Software dient dazu, den… …   Deutsch Wikipedia

  • Stateful inspection — Unter Stateful Packet Inspection (SPI) versteht man eine dynamische Paketfiltertechnik, bei der jedes Datenpaket einer bestimmten aktiven Session zugeordnet wird. Die Datenpakete werden analysiert und der Verbindungsstatus wird in die… …   Deutsch Wikipedia

  • Stateful Packet Inspection — Unter Stateful Packet Inspection (SPI), deutsche Bezeichnung Zustandsorientierte Paketüberprüfung , versteht man eine dynamische Paketfiltertechnik, bei der jedes Datenpaket einer bestimmten aktiven Session zugeordnet wird. Die Datenpakete werden …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”