Firewall
Eine Firewall ist ein Schutzsystem, für die Kontrolle der Zugriffe zwischen zwei oder mehreren Netzwerken. Diese Zugriffe können überprüft, blockiert oder bearbeitet werden. Je nach Art der Firewall kann die Kontrolle der Daten in unterschiedlicher Intensität und Detaillierung geprüft werden und welche Kommunikationsarten/-aspekte zugelassen sind. Firewallsysteme werden oft in zwei Systembereiche unterteilt, einmal ist es die vertikale Sichtweise, bei der die OSI Schichten betrachtet werden und die horizontale Sichtweise, bei der die Anbindung der Firewall an andere Systeme betrachtet wird.
Inhaltsverzeichnis
Vertikale Sichtweise
Bei der vertikalen Sichtweise werden die Firewalls anhand der OSI-Schichten unterschieden.
Paketfilter
Paketfilter analysieren Pakete der OSI-Schicht 2 bis 4 und verarbeiten sie anhand von Regeln (Policy). Dabei kann ein Paket akzeptiert (Accept), verweigert (Reject) oder verworfen (Drop) werden. Mit den Paketfiltern lassen sich einfache Firewalls schreiben, die Quell- und Zieladresse, Ports und das Protokoll betrachten und so den Zugriff regeln.
Zustandsorientierter Paketfiler
Die zustandsorientierten Paketfilter, statefull inspection stellen eine Erweiterung der einfachen Paketfilter da. Diese beachten zusätzlich den Zustand der Verbindung, ob die Verbindung schon besteht, ob sie gerade aufgebaut wird usw.. Ein bekannter Vertreter der Sorte sind die IPTables aus dem Unix Bereich.
Applicationgateway/Proxy
Ein Applicationgateway arbeitet auf den höheren Ebenen des OSI-Modells. Im Gegensatz zu dem Paketfiltern analsysiert er nicht nur die Pakete sondern auch die verwendeten Dienste. So nimmt er die Daten entgegen und leitet sie zu dem Zieldienst weiter, wofür jedoch eine eigene Verbindung aufgebaut wird. Diese Art der Kommunikation auch als Proxy bezeichnet. Da hier keine direkte Verbindung zwischen zwei Netzwerken hergestellt werden kann. Um die Sicherheit zusätzlich zu erhöhen kann für die Verwendung des Proxys eine Authentifizierung der Benutzer verlangt werden.Bei der Realisierung von Proxies kann zwischen Application-Level-Proxies und Circuit-Level-Proxies unterschieden werden.
Application Level Proxies
Ein Application Level Proxy arbeitet nur mit einem Protokoll, d.h. er ist genau für eine spezielle Anwendung geschrieben. Daher können sie eine besonders genaue Analyse durchführen. Diese Proxies können nach verschiedenen Prinzipien funktionieren, welchen folgend vorgestellt werden.
Store-And-Forward-Prinzip
Bei dem Store-And-Forward-Prinzip wird die komplette Kommunikation mit dem Client durchgeführt und anschließend erst an das Ziel durchgeführt. So findet keine Ende-Zu-Ende Verbindung statt. Dieses Prinzip ist beispielsweise bei SMTP-Proxys üblich.
Benutzerorientierte Application Level Proxies
Benutzerorientierte Application Level Proxies führen die Proxies eine Authentifikation mit dem Benutzer durch, welche nur für den speziellen Proxy dient. Verwendet der Benutzer einen anderen Dienst muss er sich dort neu authentifizieren.
Authentication Proxy (Global Authentication
Im Gegensatz zu benutzerorienterten Application Level Proxies, die jeweils eine eigene Benutzerauthentifikation erfordern, kann ein Authentification Proxy benutzt werden um eine einmalige Authentifizierung des Benutzers für verschiedene Dienste-Proxies zu ermöglichen. Dieser führt gleichzeitig eine entsprechende Autorisation, der vom User benutzbaren Dienste-Proxies durch.
=Transparent Proxy
Bei einem transparenten Proxy bekommt der Benutzer von diesem nichts mit. Hier bei werden die Verbindungen, z.B. vom Gateway, direkt an den Proxy umgeleitet. So lassen sich die Proxies nicht umgehen und auch die Konfiguration der Clients entfällt.
Circuit Level Proxies
Circuit Level Proxies sind generische Proxies und können so eine Vielzahl von Diensten bedienen. Dabei werden externe Dienste auf interne umgeleitet, wobei nur der Verbindungsaufbau kontrolliert wird. Diese Art wird oft auch als Port-Relay bezeichnet.
Adaptive Proxy
Hier werden die verschiedenen Typen zu zwei Phasen kombiniert. Die erste Phase wird als Application Gateway betrieben und in der zweiten wird als Paketfilter verwendet.
Horizontale Sichtweise
Bei der horizontalen Sichtweise wird die Kombination von Hard- und Softwarefirewalls in Verbindung mit der Netzwerkstruktur betrachtet.
Screening Router (Packet Filtering)
Der screening Router stellt die einfachste Struktur da, hier wird eine einfach Firewall mit Paketfilter und Routingfähigkeiten verwendet. Die Kommunikation aus dem lokalen Netzwerk kann auf einige Protokolltypen begrenzt statt finden, wogegen die Verbindungen aus dem öffentlichen Netz meistens blockiert werden. Die Sicherheit des lokalen Netzes hängt maßgeblich von den Policies auf de Router ab. Aufgrund der Einfachheit besitzt diese Technik auch Nachteile:
- Minimale Loggingfunktionen, eine Überwachnung auf Kompromitierung kann nur schwer statt finden
- Paketfilter können groß, komplex und unübersichtlich werden, auch das Testen dieser ist nur schwer möglich
- Fällt der Router aus ist das Netzwerk abgeschnitten, bzw. ist der Router überwunden ist das Netzwerk nicht mehr geschützt