Abschlussvortrag zur Bachelorarbeit - Classification of Traffic Flows
Transcription
Abschlussvortrag zur Bachelorarbeit - Classification of Traffic Flows
Abschlussvortrag zur Bachelorarbeit Classification of Traffic Flows using DPI Andreas Scheibleger Betreuer: Lothar Braun 17. November 2010 : Abschlussvortrag zur Bachelorarbeit 1 Gliederung Motivation Ziele OpenDPI Vermont + OpenDPI Auswertung : Abschlussvortrag zur Bachelorarbeit 2 Motivation : Abschlussvortrag zur Bachelorarbeit 3 Motivation Bisher keinerlei Klassifizierung in Vermont Vorteil der Anwendungsklassifizierung: Statistik über Anwendungsnutzung Risikoeinschätzung Spamabwehr Virenschutz Deshalb Anwendungslabel zu den Flow-Daten hinzugefügen : Abschlussvortrag zur Bachelorarbeit 4 Ziele Anwendungsklassifizierung in Vermont einbauen Infrastruktur für verschiedene Klassifizierer schaffen Anwendungslabel in Flowdaten integrieren Konkreter Klassifizierer Einbau von OpenDPI Verifizierung der korrekten Funktionalität : Abschlussvortrag zur Bachelorarbeit 5 OpenDPI : Abschlussvortrag zur Bachelorarbeit 6 OpenDPI Klassifizierung mit Pattermatching und Port-Nummern Pattern und Ports in den Code eingebaut Potentiell performant : Abschlussvortrag zur Bachelorarbeit 7 OpenDPI Ein Flow fasst Pakete, welche zu einer Verbindung gehören zusammen. Dies kann erreicht werden durch das Zusammenspiel der folgenden Punkte: IP-5 Tupel Zeitstempel Bessere Erkennungsrate erhält man durch: Bessere Zuordnung von Paketen zu Flows Übergabe der vollständigen Pakete (nicht nur die ersten x Byte) : Abschlussvortrag zur Bachelorarbeit 8 Vermont + OpenDPI Filter: Vorteil: Als eigenes Modul in der Konfiguration vorhanden Bei Codeänderungen muss lediglich dieses Modul neu kompiliert werden Nachteil: Eigenes Flow-management nötig : Abschlussvortrag zur Bachelorarbeit 9 Vermont + OpenDPI Flow-Cache: Vorteil: Flow-management bereits vorhanden Nachteil: Active-Timeout : Abschlussvortrag zur Bachelorarbeit 10 Vermont + OpenDPI Flow-Cache als Integrationsmöglichkeit gewählt. Hauptgründe dafür: Das Flow-Management in Vermont ist recht gut Durch verwenden des Cache muss dieses nicht neu geschrieben werden Code-duplizierung ist meist eine schlechte Idee Flow-Management in Vermont problematisch für OpenDPI: durch Active-timeout kann ein Teil einer Verbindung als “unknown” klassifiziert werden Gegenmaßnahme: Höher angesetztes Active-Timeout Spätere Zuordnung bei Analyse : Abschlussvortrag zur Bachelorarbeit 11 Vermont + OpenDPI Vermont: HTTP OpenDPI Testprogramm: HTTP Vermont: Flash OpenDPI Testprogramm: HTTP : Abschlussvortrag zur Bachelorarbeit 12 Vermont + OpenDPI OpenDPI Testprogramm: SSL Vermont: Teil1: SSL Teil2: unknown Weniger ein Problem da: Active-Timeout steuerbar Bei Analyse zuordenbar : Abschlussvortrag zur Bachelorarbeit 13 Auswertung Pakete aufzeichnen und als PCAP speichern Die gespeicherten Pakete direkt an das OpenDPI Testprogramm übergeben Die gespeicherten Pakete an das modifizierte Vermont übergeben Ausgabeformate vereinheitlichen => Vergleich der Erkennungsrate : Abschlussvortrag zur Bachelorarbeit 14 Auswertung Hardware: Prozessor: AMD Turion 64 X2 TL-56 Speicher: 2GB DDR2-SDRAM 667 MHz Paketdaten: ca. 1.000.000 Pakete Aufgenommen am Gateway mit 5 Rechnern im Netz innerhalb von ca. 2 Stunden Erkennungsrate wird mit dem OpenDPI Testprogramm verglichen : Abschlussvortrag zur Bachelorarbeit 15 Auswertung Ausfuehrungszeit 26 Mit OpenDPI Ohne OpenDPI 24 22 20 18 16 14 12 10 0 1 2 3 4 5 6 Dominant: Flow-Generierung OpenDPI nur geringer Mehraufwand Durchschnittswerte: ohne: 24.793s mit: 24.824s : Abschlussvortrag zur Bachelorarbeit 16 Auswertung Protocol: unknown (0) Protocol: Mail POP (2) Protocol: Mail SMTP (3) Protocol: DNS (5) Protocol: HTTP (7) Protocol: NTP (9) Protocol: DHCP (18) Protocol: Flash (40) Protocol: SSL (91) Protocol: SSH (92) Flows: 104 (+0 Flows: 45 (+0 Flows: 1 (+0 Flows: 23395 (+0 Flows: 1997 (-4 Flows: 4 (+0 Flows: 1 (+0 Flows: 72 (+4 Flows: 959 (+0 Flows: 6 (+0 ) ) ) ) ) ) ) ) ) ) Unterschiede in den Flows entstehen durch: OpenDPI Testprogramm nimmt letztes erkanntes Label Meine Implementierung den spezialisiertesten Treffer : Abschlussvortrag zur Bachelorarbeit 17 Auswertung Protocol: Protocol: Protocol: Protocol: Protocol: Protocol: Protocol: Protocol: Protocol: Protocol: unknown (0) Mail POP (2) Mail SMTP (3) DNS (5) HTTP (7) NTP (9) DHCP (18) Flash (40) SSL (91) SSH (92) Packets: 8862 (-11438) Packets: 910 (+315 ) Packets: 30 (+7 ) Packets: 101703 (+0 ) Packets: 86365 (+4792) Packets: 104 (+0 ) Packets: 14 (+0 ) Packets: 58393 (+1452) Packets: 286101 (+4842) Packets: 456716 (+30 ) Unterschiede in der Paketanzahl: OpenDPI Testprogramm ordnet unbekannte Pakete nicht über den Flow einer später erkannten Klassifizierung zu Meine Implementierung berücksichtigt dies automatisch durch Verwenden des Vermont-internen Flow-Managements : Abschlussvortrag zur Bachelorarbeit 18 Auswertung Vielen Dank für die Aufmerksamkeit : Abschlussvortrag zur Bachelorarbeit 19