URL dieser Newsmeldung:

27.10.2005

About Security #29: Die Firewall — Grundlagen


Die Firewall ist ein zentraler Bestandteil aller Schutzmaßnahmen, wenn zwei oder mehr Netze miteinander verbunden werden. Sie besteht aus einem oder mehreren Paketfiltern und Application Level Gateways und dem zugehörigen organisatorischen und technischen Konzept. In dieser Folge erfahren Sie, wie ein Paketfilter arbeitet.

Einige Kenntnisse des TCP/IP-Protokolls sind für das Verständnis der Firewall hilfreich. Der Aufbau der jeweiligen Pakete, insbesondere der Header, wird immer dann erklärt, wenn es notwendig ist. Der Aufbau der Protokollschichten wird im Folgenden kurz zusammengefasst:

N E U ! Security aktuell
Täglich aktuelle Security-Infos!

Grundlage: Das TCP/IP-Schichtenmodell

Das TCP/IP-Protokoll basiert auf vier Schichten. Jede davon leitet die Daten beim Senden von der übergeordneten an die nächsttiefere Schicht weiter und fügt dabei die eigenen Verwaltungsinformationen hinzu. Beim Empfang werden entsprechend jeweils nur die auf der jeweiligen Schicht der Gegenseite hinzugefügten Informationen ausgewertet.

Anwendungsschicht
Protokolle: z.B. HTTP, HTTPS, SMTP, POP3, ...
Transportschicht
Protokolle: TCP und UDP
Netzwerkschicht
Protokolle: IP und ICMP
Netzzugangsschicht
Protokoll: ARP
physikalisches Netzwerk
z.B. Ethernet
Netzzugangsschicht
Die Netzzugangsschicht bildet die Schnittstelle zur verwendeten Netzwerktechnologie, z.B. Ethernet. Sie kennt die Struktur und Adressierung des zu Grunde liegenden Netzes.
Für die Zuordnung der Hardwareadresse des Netzwerks zur IP-Adresse des Betriebssystems wird das Address Resolution Protocol (ARP, definiert in RFC 826) verwendet.
Auf der Netzzugangsschicht kommunizieren Systeme innerhalb eines Netzwerks direkt miteinander, ohne auf die Unterstützung durch andere Systeme angewiesen zu sein.
Netzwerkschicht
Die Netzwerk- oder Internetschicht ist für die Kommunikation zwischen Systemen in verschiedenen Netzwerken zuständig.
Die Kommunikation erfolgt über das Internet Protocol (IP, RFC 791). IP ist ein verbindungsloses Protokoll, d.h. es erlaubt den Austausch von Daten zwischen zwei Systemen ohne vorherigen Verbindungsaufbau. Es findet weder eine Überprüfung der korrekten Übertragung noch eine Fehlererkennung statt. Fehlerhafte Pakete, die nicht rekonstruiert werden können, werden verworfen.
Das Internet Control Message Protocol (ICMP, RFC 792) dient dem Austausch von Statusinformationen zwischen den IP-Implementierungen verschiedener Systeme.
Anhand von Routing-Tabellen wird entschieden, auf welchem Weg ein IP-Paket an welches andere System geschickt werden muss, um den gewünschten Empfänger zu erreichen.
Transportschicht
Die Transportschicht stellt eine Verbindung zwischen zwei Endpunkten der jeweiligen Anwendung her.
Zur Adressierung der Anwendung werden die so genannten Ports verwendet (Liste bekannter Ports).
Das Transport Control Protocol (TCP, RFC 793) ist ein verbindungsorientiertes Protokoll: Nach dem Verbindungsaufbau ist sichergestellt, dass die von der Anwendungsschicht des sendenden Systems an das TCP übergebenen Daten fehlerfrei und in der richtigen Reihenfolge an die Anwendungsschicht des empfangenen Systems übermittelt werden oder das sendende System eine entsprechende Fehlermeldung enthält.
Das User Datagram Protocol (UDP, RFC 768) ist ein verbindungsloses Protokoll. Es wird vor allem zur Übertragung kleiner Datenmengen verwendet, bei denen sich der Aufbau einer sicheren Verbindung nicht lohnt. Das Fehlen jeglicher Sicherheitsfunktionen führt dazu, dass UDP-Pakete sehr leicht zu fälschen sind.
Anwendungsschicht
Auf der Anwendungsschicht ist eine Vielzahl von Protokollen angesiedelt, z.B. das Hypertext Transfer Protocol (HTTP, RFC 2616) und HTTP Over TLS (HTTPS, RFC 2818) für den Transport von Webseiten oder das Simple Mail Transfer Protocol (SMTP, RFC 821), das Post Office Protocol (POP3, RFC 1939) und das Internet Message Access Protocol (IMAP, RFC 3501) für den Transport von E-Mails.
Der Paketfilter
About Security: Die komplette Serie

Der Paketfilter arbeitet auf der Netzzugangs-, Netzwerk- und Transportschicht des TCP/IP-Schichtenmodells. Die Header aller empfangenen Pakete (IP, ICMP, TCP und UDP) werden ausgewertet und mit vorgegebenen Filterregeln verglichen. Ausgewertet werden z.B. Sende- und Zieladresse, Portnummer der Anwendung sowie TCP-Statusinformationen. Die Filterregeln bestimmen, welche Pakete mit welchen Eigenschaften den Paketfilter in welcher Richtung passieren dürfen bzw. abgewiesen werden.

Ein erstes Beispiel

Aus dem Internet soll auf den Webserver mit der Adresse 80.237.217.196 über HTTP zugegriffen werden. Die Regeln für einen vor dem Webserver positionierten Paketfilter sehen folgendermaßen aus:

Nr. Senderadresse Port Zieladresse Port Protokoll Flags Aktion

1. 0.0.0.0 >= 1024 80.237.217.196 80 TCP permit
2. 80.237.217.196 80 0.0.0.0 >= 1024 TCP ACK permit
3. 0.0.0.0 any 80.237.217.196 any any any reject
  • Regel 1 erlaubt (permit) die Durchleitung von Paketen von einem beliebigen Absender (0.0.0.0) an den Webserver, wenn der Zielport 80 ist und die Anfrage von einem Port ab 1024 kommt. Port 80 ist der für HTTP reservierte Port.
  • Regel 2 erlaubt die Durchleitung der Antworten des Webservers; diese Pakete haben das Acknowledgement-Flag (ACK) gesetzt.
  • Regel 3 sorgt dafür, dass alle anderen Pakete zurückgewiesen werden.

In dieser Folge lernten Sie die Grundlagen des TCP/IP-Schichtenmodells und von Paketfiltern kennen. In der nächsten Folge wird die Filterung der Daten durch den Paketfilter näher betrachtet.

Wenn Sie Fragen oder Themenvorschläge haben, können Sie diese gerne an die angegebene E-Mail-Adresse senden oder im Security-Forum einbringen!

Carsten Eilers

About Security – Übersicht zum aktuellen Thema "Firewall"




© 2012 Software & Support Verlag GmbH. Vervielfältigung nur mit Genehmigung des Verlags. Fragen?