Fehlertoleratne HTTP-Analyse

Ansprechpartner:
René Rietz (rené.rietz@b-tu.de)

Motivation

In der Vergangenheit haben sich Firewalls als Basistechnologie zur präventiven Sicherung der Netzwerke etabliert. Diese setzen häufig Paketfilter ein, die Kommunikationsprotokolle bis hin zur Transportschicht analysieren und mittels Firewall-Richtlinien über die Weiterleitung der auf diesen Protokollen basierenden Datenströme entscheiden. Aktuelle Trends in der Entwicklung von Netzprotokollen beinhalten jedoch häufig sogenannte Overlay-Strukturen bei denen etablierte Anwendungsprotokolle wie z.B. http als Transportprotokoll für tiefer geschachtelte anwendungsspezifische Kommunikationsprotokolle dienen. Die daraus resultierenden Verbindungen werden jedoch von klassischen Firewalls nicht erkannt und als gewöhnlicher Verkehr der darunterliegenden Schicht (z.B. HTTP-Verkehr) behandelt.

Aufgabenbeschreibung

Im Rahmen dieser Arbeit soll ein fehlertoleranter HTTP-Parser implementiert werden, der die im Verlauf einer HTTP-Sitzung anfallenden Daten in normalisierter Form bereitstellt. Während die Datenübertragung bis hin zur Transportschicht auf standardisierten Kodierungsvorschriften basiert, muss bei der Analyse der Anwendungsschicht die Verwendung verschiedener, frei wählbarer Datenkodierungen, die zum Teil nicht kommuniziert werden, beachtet werden. Hierbei ist sowohl die Kodierung der in den Web-Protokollen häufig Text-basierten Protokoll-Elemente zu betrachten (z.B. ISO-8859-15, UTF-8) als auch die Kodierung der Dateninhalte (z.B. quoted printable, Base64). Als Basis für diesen Parser ist der im IDS Bro eingesetzte BINPAC-Parser (HTTP ist hier zum Teil schon implementiert; es fehlt eine Unterstützung für die Dateninhalte) oder alternativ ULTRAPAC vorgesehen.