Freitag, 3. September 2010 |
Ein Application Level Gateway besteht, wie in About Security #32 beschrieben, aus zwei TCP/IP-Stacks und einem oder mehreren diese verbindenden Proxies, die jeweils für ein bestimmtes Protokoll der Anwendungsschicht zuständig sind. Protokolle, für die kein Proxy vorhanden ist, können das Gateway nicht passieren. Es besteht jedoch die Möglichkeit, dass ein Angreifer eine Schwachstelle oder Fehlkonfiguration ausnutzt, um eine andere Software diese Funktion übernehmen zu lassen und darüber ein eigentlich gesperrtes Protokoll zu verwenden. Insbesondere Software mit Routing-Funktionalität ist dabei gefährlich.
N E U ! Security
aktuell
Täglich aktuelle Security-Infos!
Es wird zwischen zwei Arten von Proxies unterschieden:
Der HTTP-Proxy kontrolliert Verbindungen von und zu einem Webserver. Die Verbindung wird vom Client zum HTTP-Port des Application Level Gateways (meist TCP-Port 80) aufgebaut. Der HTTP-Proxy baut daraufhin (je nach Bedarf erst nach einer Identifikation und Authentifizierung des Benutzers) eine zweite Verbindung zum TCP-Port 80 des Webservers auf. Danach kann der Client über den HTTP-Proxy des Application Level Gateways mit dem Webserver kommunizieren.
Zur Überwachung der Kommunikation werden zwei Filter angewendet:
Ist eine Identifikation und Authentifizierung notwendig, können benutzerspezifische Regeln für die Filterung verwendet werden.
Reauthentifizierung
Da das Protokoll HTTP zustandslos arbeitet, kann der HTTP-Proxy das
Ende
einer Session nicht von sich aus erkennen. Wird der HTTP-Proxy zur
Authentifizierung verwendet, ist dies aber notwendig, damit sich der
Benutzer
nicht bei jedem Seitenaufruf erneut authentifizieren muss. Um dies
Problem
zu umgehen, wird nach der erfolgreichen Authentifizierung ein Timer
gestartet, nach dessen Ablauf die Session für beendet erklärt und
die Verbindung abgebaut wird. Jedes Mal, wenn eine Aktivität in der
Session stattfindet, wird der Timer zurückgesetzt.
Mögliche
Logfile-Einträge
Ein HTTP-Proxy kann z.B. folgende Daten protokollieren:
Der FTP-Proxy kontrolliert die Kommunikation über FTP. Wie beim HTTP-Proxy wird die Verbindung für den Befehlskanal vom Client zu Port 21 des Application Level Gateways aufgebaut. Nach einer eventuell erforderlichen Identifikation und Authentifizierung des Benutzers baut der FTP-Proxy eine zweite Befehlsverbindung zum TCP-Port 21 des FTP-Servers auf. Danach kann der Client über den FTP-Proxy des Application Level Gateways mit dem FTP-Server kommunizieren.
Wie beim HTTP-Proxy werden dabei ein Befehls- und ein Datenfilter angewandt, die die verwendeten Befehle beziehungsweise Daten analysieren und prüfen. So kann beispielsweise dem Benutzer anonymous das Herunterladen bestimmter Dateitypen erlaubt und die Nutzung anderer Befehle verboten werden, während einem anderen Benutzer gezielt das Heraufladen von Dateien erlaubt wird.
Die möglichen Logfile-Einträge des FTP-Proxy sind die gleichen wie beim HTTP-Proxy.
In der nächsten Folge wird das Thema Application Level Gateways mit der Beschreibung von SMTP-Proxies und Circuit Level Proxies abgeschlossen.
Wenn Sie Fragen oder Themenvorschläge haben, können Sie diese gerne an die angegebene E-Mail-Adresse senden oder im Security-Forum einbringen!
About Security – Übersicht zum aktuellen Thema "Firewall"