Retail KLASSIFIZIERUNG VON SCHADSOFTWARE ANHAND VON SIMULIERTEM NETZWERKVERKEHR Technology Life Sciences & Healthcare Florian Hockmann Ruhr-Universität Bochum florian.hockmann@rub.de Automotive Consumer Energy & Chemicals
ÜBERSICHT Motivation Stand der Forschung Internet-Simulation Malware-Kommunikation Clustering mit DBSCAN Ergebnisse 2
MOTIVATION Ausgangslage: >100.000 Samples pro Tag Ziel: Automatische Analyse Samples anhand ihres Verhaltens klassifizieren Zuordnung: Samples Familien Klassifizierung neuer Malware 3
STAND DER FORSCHUNG Malware-Clustering anhand von: Statischer Analyse (IAT, Call-Graphen, ) Verhaltensbasierter Analyse: API Calls Kommunikationsverhalten Bisher (hauptsächlich): 1. Grundlage: Echtes Internet 2. Ziel: Netzwerksignaturen erstellen Frage: Gute Klassifizierung mit vollständiger Simulation möglich? 4
VERGLEICH: INTERNET SIMULATION (1) Kommunikation: Malware - Simulationsserver Kommunikation: Malware C&C Server Falsche Antwort keine weitere Kommunikation 5
VERGLEICH: INTERNET SIMULATION (2) Anbindung ans Internet: Vorteile: Weitreichende Kommunikation (z.b. mit C&C-Server oder P2P-Botnetz) Bessere Analyse des Kommunikationsprotokolls Nachteile: Nicht deterministisch: C&C-Server offline, P2P-Botnetz nicht erreichbar, unterschiedliche Kommandos, etc. Verhalten der Malware abhängig von externen Faktoren 6
VERGLEICH: INTERNET SIMULATION (3) Simulation: Vorteile: Deterministisch: Kommunikationspartner (fast) immer erreichbar + identische Antworten Verhalten der Malware deterministisch Nachteile: Oft nur erste Anfragen beobachtbar (Simulation schickt falsche Antworten) Keine tiefergehende Analyse des Kommunikationsprotokolls möglich 7
INETSIM (1) Simuliert häufig verwendete Protokolle: HTTP(S), DNS, IRC, POP3(S), SMTP(S), FTP(S), (21 Protokolle insg.) Gibt Standardantworten zurück Kann Dateien ausliefern (passend zur Dateiendung) Erwartet Protokolle auf Standard-Ports Verfügbar unter: http://www.inetsim.org/ 8
INETSIM (2) Screenshot: Aufruf eines HTML-Dokuments mit Inetsim 9
VERSUCHSAUFBAU Analysesystem: Hive mit 22 VMs VM: Windows XP SP3, 32 Bit Kommunikation nur mit Inetsim-Server möglich Malware wird 2 Minuten lang ausgeführt Netzwerkverkehr wird mit Tcpdump mitgeschnitten PCAP-Datei 10
KOMMUNIKATION: MALWARE - INETSIM Screenshot: Malware Viking kommuniziert mit Inetsim-Server 11
CLUSTERING Daten anhand ihrer Eigenschaften gruppieren Eigenschaften werden durch Features ausgedrückt Distanz mithilfe der Features berechnen Niedrige Distanz hohe Ähnlichkeit Quelle: en.wikipedia.org 12
DBSCAN Dichte-basierter Clustering-Algorithmus Vorteile: Cluster beliebiger Form und Größe Rauschpunkte werden separat behandelt Anzahl der Cluster muss nicht bekannt sein Nachteil: Kann nicht mit Clustern unterschiedlicher Dichte umgehen Ergebnis stark abhängig von der Distanzfunktion Quelle: en.wikipedia.org 13
FEATURES EXTRAHIEREN Alle Protokolle: #IPs, #Domains, #Pakete, Paketgröße Protokollspezifisch: Bsp. DNS: Query-Länge (Mittelwert + Standardabweichung) Query-Entropie ( ) #Queries #Queries / Domain TLDs Implizite DGA-Erkennung 14
DISTANZ BERECHNEN Vorgaben: Samples, die dieselben Protokolle verwenden, sollen niedrigere Distanz haben als Samples mit unterschiedlichen Protokollen Große Werte nicht implizit höher gewichten, Bsp.: #Pakete vs. #IRC-Server Umsetzung: Distanzen normalisieren, z.b. auf Bereich von 0 bis 1 Distanzen pro Protokoll berechnen Protokoll nur von 1 Sample verwendet Distanz(Protokoll) = 1 Distanz insgesamt: Mittelwert der Protokoll-Distanzen 15
EVALUATION Precision: # korrekt klassifizierte Samples # klassifizierte Samples Korrektheit der Klassifizierung Recall: # korrekt klassifizierte Samples Trefferquote # Samples, die klassifiziert werden sollten F-Measure: Harmonisches Mittel aus Precision und Recall 16
MALWARE-SET Malheur-Set: 3133 Samples 24 Familien Auswahl: Nur Samples, die Netzwerkverkehr erzeugen Familien mit 10 Samples Ergebnis: 2009 Samples 16 Familien 17
ERGEBNISSE Ergebnis: ~92% 18
ZUSAMMENFASSUNG Malware erfolgreich klassifiziert basierend auf Netzwerkverkehr Fazit: Klassifizierung mit vollständiger Simulation möglich Limitierung: Nur Klassifizierung von Malware möglich, die auch kommuniziert (offensichtlicherweise) Noch zu tun: Anpassen der Distanzfunktion an gemessenen Werten (aktuell: manuell gewählt) Evtl. bessere Unterstützung von selteneren Protokollen 19
Fragen? 20