Maschinelles Lernen in hostbasierten...

70
F REIE UNIVERSIT ¨ AT B ERLIN FACHBEREICH MATHEMATIK UND I NFORMATIK I NSTITUT F ¨ UR I NFORMATIK Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemen DIPLOMARBEIT VON KONRAD R IECK geb. am 20. Februar 1977 in Berlin Matrikelnummer: 3264138 Eingereicht am 8. M¨ arz 2004 Revision: 6.9 - 8. M¨ arz 2004 Erster Betreuer: Prof. Dr.-Ing. Hannes Federrath Zweiter Betreuer: Prof. Dr. Ra´ ul Rojas

Transcript of Maschinelles Lernen in hostbasierten...

Page 1: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

FREIE UNIVERSITAT BERLIN

FACHBEREICH MATHEMATIK UND INFORMATIK

INSTITUT FUR INFORMATIK

Maschinelles Lernen in hostbasiertenIntrusion-Detection-Systemen

DIPLOMARBEIT VON

KONRAD RIECK

geb. am 20. Februar 1977 in BerlinMatrikelnummer: 3264138

Eingereicht am 8. Marz 2004Revision: 6.9− 8. Marz 2004

Erster Betreuer: Prof. Dr.-Ing. Hannes FederrathZweiter Betreuer: Prof. Dr. Raul Rojas

Page 2: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

Aufgabenstellung der Diplomarbeit

Thema

Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemen (IDS)

Zielsetzung

Hostbasierte IDS verwenden verschiedene Techniken, um Anomalien und damit Angriffe in-nerhalb eines Rechnersystems zu erkennen. Maschinelles Lernen ist ein geeignetes Mittel, umderartige Anomalien zu bestimmen.

Die verschiedenen in der Literatur beschriebenen Verfahren zur Anomalieerkennung, die aufmaschinellem Lernen beruhen, sollen vergleichend analysiert werden.

– Vergleich verschiedener Arten des maschinellen Lernens in IDS (z. B. Hidden-Markov-Models (HMM), Support-Vektor-Maschinen (SVM) und neuronale Netze)

– Definition von IDS-Schnittstellen und Entwicklung lernfahiger IDS-Module auf Grundla-ge des XML-basierten IDMEF-Formats.

– Evaluation von lernfahigen IDS-Modulen auf selbst erhobenen und vorgefertigten Trai-ningsdaten unter den Betriebssystemen Solaris und GNU/Linux.

– Analyse logisch oder kumulativ kombinierter lernfahiger IDS-Module zur verbessertenAnomalieerkennung (Korrelation).

Im Rahmen der Arbeit sollen verschiedene Arten des maschinellen Lernens implementiert undals IDS-Module in einem IDS getestet werden.

Bearbeiter: Konrad Rieck

Matrikelnummer: 3264138

Erster Betreuer: Prof. Dr.-Ing. Hannes Federrath

Zweiter Betreuer: Prof. Dr. Raul Rojas

Beginn am: 08.09.2003

Fertigstellung am: 08.03.2004

2

Page 3: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

Zusammenfassung

In dieser Arbeit werden Algorithmen des maschinellen Lernens zur Anomalieerkennung in ei-nem hostbasierten Intrusion-Detection-System eingesetzt. Die Algorithmen modellieren Profilefur das Verhalten von Programmen und ermoglichen die Erkennung von unbekannten und neuenAngriffen.

Stochastische, regelbasierte, neuronale und empirische Lernalgorithmen werden hierzu als dy-namisch ladbare Module in ein Intrusion-Detection-System integriert und auf realen Daten vonLinux-Rechnersystemen evaluiert.

Eine Implementierung von rekurrenten neuronalen Netzen (Elman-Netze) erzielt bei der Evalua-tion die besten Ergebnisse und identifiziert alle unbekannten Angriffe bei einer False-Positive-Rate von 3,63%.

Die Leistungsfahigkeit des Intrusion-Detection-Systems wird durch eine Korrelation mehre-rer Lernalgorithmen verbessert. Der Algorithmus der gewichteten Mehrheit kombiniert hierzustochastische, regelbasierte und neuronale Lernalgorithmen. Die False-Positive-Rate kann auf0,99% reduziert werden.

Das im Rahmen dieser Arbeit entwickelte System ist verteilt konzipiert, unterstutzt den IDMEF-Standard und verarbeitet Auditdaten der Betriebssysteme Linux und Solaris.

3

Page 4: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

Inhaltsverzeichnis

1 Einleitung 61.1 Intrusion-Detection-Systeme. . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

1.1.1 Datenquellen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71.1.2 Analysekonzepte. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81.1.3 Reaktionen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81.1.4 Architektur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91.1.5 Standardisierung. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10

1.2 Maschinelles Lernen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .131.2.1 Regelbasiertes Lernen. . . . . . . . . . . . . . . . . . . . . . . . . . . 131.2.2 Stochastisches Lernen. . . . . . . . . . . . . . . . . . . . . . . . . . . 141.2.3 Neuronales Lernen. . . . . . . . . . . . . . . . . . . . . . . . . . . . .161.2.4 Empirisches Lernen. . . . . . . . . . . . . . . . . . . . . . . . . . . .17

2 Stand der Forschung 192.1 Evaluation von IDS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .19

2.1.1 Erkennungs- und False-Positive-Rate. . . . . . . . . . . . . . . . . . . 192.1.2 Receiver-Operating-Charakteristik. . . . . . . . . . . . . . . . . . . . . 202.1.3 Operationsbereich. . . . . . . . . . . . . . . . . . . . . . . . . . . . .21

2.2 Nutzerprofile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .222.2.1 N-Gramme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .222.2.2 Neuronale Netze. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .23

2.3 Programmprofile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .252.3.1 N-Gramme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .252.3.2 String-Transducer. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .262.3.3 Versteckte Markov-Modelle. . . . . . . . . . . . . . . . . . . . . . . . 272.3.4 RIPPER-Algorithmus . . . . . . . . . . . . . . . . . . . . . . . . . . . 282.3.5 Neuronale Netze. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .292.3.6 Support-Vektor-Maschinen. . . . . . . . . . . . . . . . . . . . . . . . . 31

2.4 Zusammenfassung. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .32

3 Entwurf eines lernf ahigen HIDS 353.1 Analysekonzept. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .35

3.1.1 Modulschnittstelle. . . . . . . . . . . . . . . . . . . . . . . . . . . . .363.1.2 Lernfahige Module. . . . . . . . . . . . . . . . . . . . . . . . . . . . .373.1.3 Erweiterungen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .38

4

Page 5: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

3.2 Architektur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .403.2.1 Komponenten. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .41

3.3 Evaluation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .443.3.1 Vorevaluation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .443.3.2 Hauptevaluation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .47

3.4 Korrelation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .533.4.1 Formatierung zur Korrelation. . . . . . . . . . . . . . . . . . . . . . . 533.4.2 Korrelationsalgorithmen. . . . . . . . . . . . . . . . . . . . . . . . . . 543.4.3 Untersuchung. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .553.4.4 Ergebnisse. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .55

4 Schlussbemerkungen 58

5 Bibliographie 615.1 Intrusion-Detection-Systeme. . . . . . . . . . . . . . . . . . . . . . . . . . . .615.2 Maschinelles Lernen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .635.3 Maschinelles Lernen in IDS. . . . . . . . . . . . . . . . . . . . . . . . . . . .655.4 Weitere Literatur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .685.5 Internetreferenzen. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .68

5

Page 6: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

1 Einleitung

In den letzten funf Jahren hat sich die Anzahl an gemeldeten Sicherheitsvorfallen (Security Inci-dents) im Internet nahezu jahrlich verdoppelt. Insgesamt wurden fur das Jahr 2003uber 130.000Vorfalle mit teilweise bis zu 1.000 betroffenen Rechnersystemen vom Computer Emergency Re-sponse Team (CERT) registriert [CER03].

Die Auswirkungen eines erfolgreichen Angriffs auf ein Rechnersystem oder Netzwerk sind ne-ben dem moglichen Verlust von Vertraulichkeit, Integritat und Verfugbarkeit vor allem durchenorme Kosten gekennzeichnet. Es ist deutlich, dass die Sicherheitsmaßnahmen in aktuellenSystemen verbessert werden mussen, um die wachsende Anzahl an Sicherheitsvorfallen zu redu-zieren.

Neben klassischen Maßnahmen wie strengen Sicherheitspolitiken, regelmaßiger Pflege und War-tung sowie Paketfiltern sind vor allem die Intrusion-Detection-Systeme (IDS) ein an Bedeutunggewinnendes Werkzeug der IT-Sicherheit. IDS werden zur zeitnahen Erkennung von Angriffengenutzt und verringern die Kosten von Kompromittierungen deutlich [WFCR01].

In dieser Arbeit werden IDS analysiert und vorgestellt, die neben bekannten auch unbekannteAngriffe durch Algorithmen des maschinellen Lernens erkennen.

1.1 Intrusion-Detection-Systeme

Als Intrusion-Detection-Systeme(IDS) werden Softwaresysteme bezeichnet, die einen Ereignis-strom eigenstandig analysieren, zeitnah Angriffe identifizieren und entsprechende Gegenmaß-nahmen einleiten.

Ein Angriff ist hierbei definiert als eine von innen oder außen kommende Aktivitat in einemRechnersystem oder Netzwerk, die versucht, ein Schutzziel wie Vertraulichkeit, Integritat oderVerfugbarkeit zu verletzen [vHK98].

Zur Analyse von IDS werden Angriffe nach ihrer Funktionsweise typisiert. Die von der Defen-se Advanced Research Projects Agency (DARPA) durchgefuhrten Studien zur Evaluation vonIDS [CLF+99, LFG+00, HRL01] definieren vier unterschiedliche Typen von Angriffen.

6

Page 7: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

1. Das unautorisierte Eindringen in ein Rechnersystem oder Netzwerk, z. B.Remote-to-Local-Angriffe (R2L).

2. Die unautorisierte Erweiterung von Zugriffsrechten auf einem Rechnersystem oder in ei-nem Netzwerk, z. B.User-to-Root-Angriffe (U2R).

3. Die mutwillige Beeintrachtigung der Verfugbarkeit eines Dienstes, Rechnersystems oderNetzwerks, z. B.Denial-of-Service-Angriffe (DoS).

4. Die systematische Suche nach sicherheitsrelevanten Schwachstellen in einem Rechnersy-stem oder Netzwerk, so genannteProbes.

Angriffe lassen sich noch auf andere Weise typisieren, wie z. B. nach zu Grunde liegenderSchwachstelle [Ken99, S. 30] oder nach genutzter Ebene des OSI-Referenzmodells [vHK98,S. 20ff].

Nach [BM01] konnen IDS anhand von drei Parametern gegliedert werden: DerDatenquellederEreignisse, demAnalysekonzept, nach dem die Ereignisse ausgewertet werden und der auf einenerkannten Angriff folgendenReaktion.

1.1.1 Datenquellen

Hostbasierte IDS (HIDS)

HIDS analysieren ausschließlich Ereignisse von einzelnen Rechnersystemen, die z. B. durch Be-triebssystemaudit oder die Filterung von Logdaten gewonnen werden. Die feine Granularitat derEreignisse ermoglicht eine hohe Erkennungsrate. Da einige Komponenten auf dem Rechnersy-stem selbst operieren, konnen HIDS nicht alle Angriffe auf die Verfugbarkeit erkennen.

Netzbasierte IDS (NIDS)

NIDS uberwachen ein Netzwerksegment und werden an sicherheitsrelevanten Netzknoten be-trieben. Als Datenquelle dient der Strom von passierenden Netzwerkpaketen. NIDS erkennengrundsatzlich alle vorgestellten Typen von Angriffen. Die Erkennungsrate kann aber durch ho-hen und stark variierenden Netzverkehr beeintrachtigt werden.

Applikationsbasierte IDS (AIDS)

Applikationsbasierte IDS stellen eine Untergruppe der HIDS dar und analysieren ausschließlichEreignisse einzelner Applikationen, wie z. B. Transaktionsprotokolle von Datenbankmanagement-systemen. Auch diese Systeme konnen nicht alle Angriffe auf die Verfugbarkeit der Applikatio-nen erkennen.

7

Page 8: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

Netzknoten

Applikation

Rechnersystem

NIDS

HIDS

AIDS

Abbildung 1.1: IDS-Datenquellen [Rie03]

Abbildung 1.1 verdeutlicht die drei verschie-denen Datenquellen. Der Bereich, in dem dieEreignisse erhoben werden, ist jeweils durcheinen Kreis markiert.

Diese Arbeit beschrankt sich auf die Analysevon hostbasierten IDS, da diese in der Studieder DARPA [LFG+00] hohere Erkennungsra-ten gegenuber anderen Systemen zeigen undsomit besser zur Untersuchung von Analy-sekonzepten geeignet sind. Ein Transfer derUntersuchungen auf netz- und applikationsba-sierte IDS ist jedoch generell moglich.

1.1.2 Analysekonzepte

Signaturanalyse

Bei der Signaturanalyse wird ein Ereignisstrom nach bekannten oder hypothetischen Musternvon Angriffen durchsucht [Sob99, S. 23]. Diese Suche kann effizient realisiert werden. Es mussallerdings eine Datenbank der Muster von Angriffen verwaltet und regelmaßig aktualisiert wer-den. Unbekannte oder nur leicht modifizierte Angriffe werden oft nicht erkannt. Eine Typisierungentsprechend der vorgestellten Angriffstypen istuber die Signaturen moglich.

Anomalieerkennung

Bei der Anomalieerkennung wird aus einem Strom von angriffsfreien Ereignissen ein Referenz-profil mit Hilfe der Stochastik oder kunstlicher Intelligenz erstellt [Sob99, S. 21]. Das Abwei-chen von einem solchen Profil wird als Angriff gewertet. Im Gegensatz zur Signaturanalysekonnen so auch unbekannte und modifizierte Angriffe erkannt werden, womit eine Erhohungvon falsch erkannten Angriffen (False Positives) einhergeht. Eine Typisierung von Angriffen istnicht moglich, da nur Anomalien erkannt werden.

Ein besondere Variante bilden so genannteHoneypots. Es handelt sich um Systeme, die keineproduktive Funktion erfullen und jede von außen initiierte Aktion als Anomalie werten [Spi03].

1.1.3 Reaktionen

Passive Reaktionen

Als passive Reaktion werden alle Maßnahmen eines IDS bezeichnet, die nicht direkt und aktivauf einen erkannten Angriff einwirken. Passive Reaktionen umfassen vor allem das Erstellen undVersenden von Warnnachrichten, die Informationenuber die Angriffsquelle, das Angriffsziel undden Angriff selbst enthalten.

8

Page 9: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

Aktive Reaktionen

Aktive Reaktionen sind direkt auf den erkannten Angriff ausgerichtet. Das IDS kann restrik-tiv reagieren und z. B. den laufenden Prozess des Angreifers einschranken oder beenden. DasIDS kann aber auch weitereUberwachungsfunktionen aktivieren, um die Zurechenbarkeit desAngriffs zu erhohen. Eine interessante Reaktion ist dieSystemaufrufverzogerung, bei der deraktuelle Prozess entsprechend eines Anomaliewerts bis zum vollstandigen Stillstand verzogertwerden kann [SF00].

1.1.4 Architektur

Ein IDS ist ein hoch komplexes Softwaresystem aus einer oder mehreren Komponenten, dasbesondere Anforderungen an die zu Grunde liegende Architektur stellt.

Komponenten

Die Softwarekomponenten eines IDS werden entsprechend ihres Aufgabenfeldes in vier allge-meine Typen gegliedert [BSI02, S. 6ff]:

– SensorenSensoren erheben Ereignisse von host- oder netzbasierten Datenquellen und leiten diesezur Analyse und Speicherung weiter.

– AuswertungsstationenAuswertungsstationen analysieren Ereignisse und identifizieren Angriffe. Die ausgewerte-ten Informationen werden ebenfalls als Ereignisse versandt und erlauben eine wiederholteAnalyse.

– ManagementstationenManagementstationen regeln die Kommunikation zwischen den einzelnen Komponenteneines IDS, bestimmen die notigen Parameter,uberwachen die einzelnen Ereignisstromeund versenden Warnnachrichten.

– DatenbankkomponentenDatenbankkomponenten werden zur effizienten Verwaltung und strukturierten Speiche-rung der anfallenden Daten aller Komponenten genutzt.

Die Aufgabe der Einleitung von aktiven Reaktionen auf erkannte Angriffe wird oftmals aus demeigentlichen IDS ausgegliedert und separat in einemIntrusion-Response-System(IRS) realisiert.IRS sind oft enguber Schnittstellen mit anderen Sicherheitssystemen wie z. B. Paketfiltern ver-bunden, um effizient und prazise zu reagieren.

9

Page 10: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

Organisation

Eine strikte Trennung der beschriebenen Komponenten ist nicht immer zweckmaßig, so dassauch hybride Varianten moglich sind. Generell wird zwischen einzelnen Applikationen (Stand-Alone-Systemen) und verteilten IDS unterschieden [Sob99, S. 28f].

Verteilte IDS konnen auf zwei Weisen konzipiert werden, alszentralistischesSystem mit hierar-chischer Anordnung und konzentrischer Auswertung oder alsnicht-zentralistischesSystem mitRedundanz und unabhangigen Komponenten.

1.1.5 Standardisierung

Auf Grund des wachsenden Bedarfs an einheitlichen IDS-Sicherheitslosungen wurden Projektezur Standardisierung und Systematisierung der Architektur, Kommunikation und Verwaltung vonIDS initiiert. Es sollen nun einige wichtige Projekte vorgestellt werden.

Common Intrusion Detection Framework

Das Common Intrusion Detection Framework (CIDF) ist ein von der DARPA gegrundetes Pro-jekt zur Standardisierung der Architektur und Kommunikation von IDS [KPSCT98].

– CIDF Architektur [PSSC98]Die Architektur des CIDF besteht aus vier Klassen von Softwarekomponenten, die mitden in Abschnitt1.1.4vorgestellten Komponenten vergleichbar sind. Die Management-stationen werden durch einen Verzeichnisdienst zur Authentifikation undUberwachungerweitert.

– CIDF Kommunikation [KBS98]Die Kommunikation des CIDF besteht aus verschiedenen Protokollen zum Transport vonNachrichten und einer LISP-ahnlichen Sprache, der Common Intrusion Specification Lan-guage (CISL) [FKP+99], die zur Kodierung von Ereignissen, Analyseergebnissen und Ge-genmaßnahmen nutzbar ist.

CIDF wurde seit 2000 nicht mehr weiterentwickelt und befindet sich in einem Entwurfszustand,so dass die spezifizierten Schnittstellen und Protokolle in der Praxis keine Verwendung finden.

Intrusion Detection Working Group

Die von der Internet Engineering Task Force gebildete Arbeitsgruppe Intrusion Detection Wor-king Group [IDW] veroffentlichte mehrere Entwurfe zur Kommunikation von IDS.

– Intrusion Detection Message Exchange Format (IDMEF) [WE02, CD03]IDMEF ist ein objektorientiertes Datenmodell fur Nachrichten zwischen IDS-Komponenten.Das Format ist generisch und erweiterbar, so dass es in HIDS und NIDS eingesetzt wer-den kann. Abbildung1.2zeigt den Aufbau einer Warnnachricht als Diagramm der UnifiedModeling Language (UML).

10

Page 11: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

– Intrusion Detection Exchange Protocol (IDXP) [FMW02]Zum Transport von IDMEF wurde ferner IDXP und ein entsprechendes Tunnelprotokollentwickelt, die beide auf dem Blocks Extensible Exchange Protocol (BEEP) aufbauen.

Beide Entwurfe wurden zur Validierung als Standard bei der Internet Engineering Task Forceeingereicht. Der Vorgang ist zum Zeitpunkt dieser Arbeit noch nicht abgeschlossen ist.

Alert

AnalyzerTime

Assessment

AdditionalData

Source

Classification

DetectTime

CreateTime

Analyzer

1

1

0..1

0..1

1..*

0..1

*

Node

Node

FileList

Process

Service

User

User

Target

0..1

0..1

0..1

0..1

0..1

0..1

Process

Service

0..1

0..1

0..1

0..1

0..1

Abbildung 1.2: IDMEF-Warnnachricht in UML-Darstellung

Erste Unterstutzung fur IDMEF findet sich in einigen quelloffenen Systemen, wie Snort [Roe04],Prelude IDS [Zar03] und M-ICE [Bie02], sowie in den zwei Bibliotheken [IDM] und [IDX].Namhafte Hersteller von IDS unterstutzen IDMEF und IDXP zur Zeit nicht.

ISO-Standard 15947

Die internationale Organisation fur Standardisierung veroffentlichte im Jahr 2002 den ISO-Stan-dard 15947 [ISO02], der Begriffe zur Konzeption und Architektur von IDS beschreibt und de-finiert. Neben den vorgestellten Parametern zur Klassifikation von IDS wird hier zusatzlich derBegriff derAnalysefrequenzeingefuhrt.

– Kontinuierliche AnalyseDas IDS erhebt und analysiert kontinuierlich Ereignisse. Eine Angriffserkennung kannnahezu in Echtzeit erfolgen. Das System erzeugt im Betrieb eine standige Rechenlast.

– Periodische AnalyseDie Analyse der erhobenen Ereignisse erfolgt periodisch, so dass Angriffe teilweise mitVerzogerung erkannt werden. Die Rechenlast des Systems kannuber die Große der Periodeskaliert werden.

11

Page 12: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

– Bedingte AnalyseDie Erhebung und Analyse von Ereignissen wird durchaußere Bedingungen, wie z. B.erhohten Netzverkehr, ausgelost. Eine Angriffserkennung ist nur eingeschrankt moglich.Das Verfahren eignet sich zur forensischen Untersuchung und Zuruckverfolgung von be-reits erkannten Angriffen.

Die in dem Standard aufgefuhrte Struktur und Architektur von IDS entspricht den in diesemKapitel vorgestellten Definitionen und deckt sich mit den zitierten Arbeiten [vHK98, BM01,BSI02] des Bundesamts fur Sicherheit in der Informationstechnik (BSI) und des amerikanischenInstituts fur Standards und Technologie (NIST).

Weitere Sicherheitsstandards

– Common Criteria for Information Technology Evaluation (CC2) [CC99]Die CC2 enthalten unter anderem Richtlinien fur sicheres Betriebssystemaudit. CC2-kon-forme Auditsysteme sind z. B. das Solaris Basic Security Module (BSM) [BSM00] unddas Secure Auditing for Linux (SAL) System [WG03].

– Common Vulnerabilities and Exposures (CVE) [CVEa]Das von der Firma MITRE Corporation gegrundete CVE-Projekt verfolgt das Ziel einereinheitlichen Benennung und Nummerierung von bekannten Angriffen. CVE wird zur Zeitvon etlichen IDS mit Signaturanalyse als Referenz genutzt. Eine Liste aller Systeme mitCVE-Unterstutzung ist in [CVEb] aufgefuhrt.

– Open Platform for Security (OPSEC) [OPSa]Unter der Initiative der Firma Check Point Software Technologies wurden Schnittstellenzu verschiedenenUberwachungssystemen und Paketfiltern definiert, die in einigen NIDS-Produkten genutzt werden. Eine Liste von Firmen und Produkten die OPSEC einsetzen istin [OPSb] gegeben.

12

Page 13: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

1.2 Maschinelles Lernen

Maschinelles Lernen ist ein multidisziplinares Forschungsgebiet, das Elemente der kunstlichenIntelligenz, der Mathematik, der Kognitionswissenschaften und der Biologie vereint. Nach [Mit97]kann maschinelles Lernen wie folgt definiert werden:

Ein Verfahrenlernt maschinellin Bezug auf eineAufgabeund einQualitatsmaß,wenn mit zunehmenderErfahrungdie Aufgabe mit hoherer Qualitat gelost wird.

Als Erfahrungist hierbei das wiederholte Durchlaufen eines Algorithmus auf den zu erlernendenDaten zu verstehen. Das Ergebnis maschinellen Lernens ist eineHypothesezur Losung der ge-gebenen Aufgabe, die eine moglichst hohe Qualitat, z. B. einen geringen Gesamtfehler, erzeugt.Die Art und Weise, in der eine solche Hypothese gesucht wird, und die Form der Hypotheseunterscheiden die verschiedenen Algorithmen des maschinellen Lernens. So unterscheidet manz. B. die folgenden Formen:

– Regelbasiertes LernenDie Hypothese wird aus einfachen Regeln, z. B.wenn-dann-Regeln, induktiv gebildet.

– Stochastisches LernenDie Hypothese besteht aus stochastischen Werten, z. B. relativen Wahrscheinlichkeiten.

– Empirisches LernenDie Hypothese wird empirisch ermittelt und besteht aus Teilen der zu erlernenden Daten.

– Neuronales LernenDie Hypothese entspricht den Gewichtsmatrizen eines neuronalen Netzes.

Es sollen nun einige Lernalgorithmen kurz vorgestellt werden. Die Auswahl beschrankt sich aufAlgorithmen, die in Forschungsarbeiten zu IDS beschrieben werden oder deren Eigenschaftenfur den Einsatz in IDS gunstig erscheinen. Eine umfassende Diskussion von Algorithmen zummaschinellen Lernen findet sich in [MST94, Mit97, DHS00].

1.2.1 Regelbasiertes Lernen

RIPPER-Algorithmus

RIPPER[Coh95] ist ein induktiver Lernalgorithmus, der in Effizienz und Geschwindigkeit klas-sische Algorithmen wie C4.5 und ID3ubertrifft. Der Algorithmus arbeitet in zwei alternierendenPhasen und partitioniert die zu erlernenden Daten in zwei disjunkte MengenS undS.

1. WachstumsphaseIn dieser Phase werden einfache Regeln der FormAn = w fur ein AttributAn und einenWert w uber der MengeS erstellt und durch Konjunktion zu komplexeren Regeln ver-bunden. Als Auswahlkriterium dient entsprechend des FOIL-Algorithmus [QCJ93] derInformationsgewinn, den eine Regel erzeugt.

13

Page 14: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

2. ReduktionsphaseIn dieser Phase werden die generierten Regeln reduziert, um zu vermeiden, dass zu spezi-fische Merkmale der MengeS erlernt werden (Overfitting). Hierzu wird uber den IREP-Algorithmus [FW94] inkrementell gepruft, ob das Entfernen einer Regel (Pruning) denGesamtfehler auf der MengeS senkt.

Der NachfolgealgorithmusSLIPPER[CS99] verbessert die Auswahl und Reduktion der Regelndurch eine vorausschauende Bewertung jeder Regel. SLIPPER ist jedoch nur zur Klassifikationvon genau zwei Mengen geeignet.

1.2.2 Stochastisches Lernen

N-Gramme

Ein einfaches Modell des stochastischen Lernens sind so genannteN -Gramme, die in [FHSL96,WFP99] Verwendung finden. Es handelt sich umuberlappende Teilfolgen der Langen, dieschrittweise aus einer Eingabefolge gebildet werden.

1

1

1

1

b

a

b

a

c a

b

c

a

Abbildung 1.3: N -Gramm-Baum

Betrachtet man das Beispiel(a, b, a, b, c, a) mit n = 3,so entstehen dieN -Gramme(a, b, a), (b, a, b), (a, b, c)und(b, c, a).

Die erzeugtenN -Gramme werden in einer Baum-struktur der Hohe n verwaltet. JedesN -Gramm be-schreibt die Kanten von der Wurzel zu einem Blatt.In jedem Blatt wird ein Zahler vorgehalten, der an-gibt, wie haufig das entsprechendeN -Gramm auf-getreten ist. Abbildung1.3 zeigt eine Baumstruk-tur fur die vier N -Gramme aus dem obigen Bei-spiel.

Uber die gespeichertenN -Gramme kann nun eine Folge von Daten alsbekanntoderunbekanntklassifiziert werden. Hierzu werden dieN -Gramme dieser Folge gebildet und mit denen derBaumstruktur verglichen. Die Haufigkeit vonUbereinstimmungen wird zur Klassifikation derFolge genutzt. Die verwalteten Zahler konnen zur Gewichtung derUbereinstimmungen verwen-det werden.

String-Transducer

Ein String-Transducerist ein stochastisches Modell aus der Computerlinguistik, das das Kon-zept derN -Gramme aufgreift und erweitert. String-Transducer werden erfolgreich in [GMS00,MG00] zur Angriffserkennung eingesetzt.

14

Page 15: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

1,0bbc

ab

ca

0,50,5

1,0

a

c

ba

Abbildung 1.4: String-Transducer

NebenN -Grammen enthalt ein String-Transducer sogenannteL-Gramme, die Teilfolgen der Langel sindund direkt anN -Gramme anschließen. Fur das Beispiel(a, b, a, b, c, a) mit n = 2 undl = 1 ergeben sich dieN -Gramme(a, b), (b, a), (b, c), (c, a) und die L-Gramme(a), (b), (c).

Eine Eingabefolge wird daher inN - und L-Grammezerlegt. Mit jedem unterschiedlichenN -Gramm wirdein Vektorx assoziiert, dessen Komponenten die Wahr-scheinlichkeiten fur die anschließendenL-Gramme ent-halten.

Abbildung1.4zeigt einen String-Transducer fur das obige Beispiel. Fur die Komponentenxi > 0des Vektorsx sind die Wahrscheinlichkeiten alsUbergange vom jeweiligenN -Gramm zu denentsprechendenL-Grammen eingezeichnet.

Eine Folge wird klassifiziert, in dem zu jedemN -Gramm der Folge und dem anschließendenL-Gramm die Abweichung vom Modell berechnet wird. Nach [MG00] ergibt sich diese Abwei-chungdi fur ein festesk ∈ N und dasi-te vonm unterschiedlichenL-Grammen wie folgt:

di = k

√√√√1

2

m∑j=1

cki,j mit ci,j =

1− xj wenni = j

xj ansonsten

Die Summe der Abweichungen oder deren Mittel kann genutzt werden, um die Eingabefolge alsbekanntoderunbekanntzu klassifizieren.

Versteckte Markov-Modelle

Versteckte Markov-Modelle(Hidden Markov Models) sind ein komplexes Modell des stochasti-schen Lernens, das auf Markov-Ketten basiert und sich besonders zum Erlernen von zeitabhangi-gen Aufgaben eignet [DHS00].

a12S2S1

a21

a11 a22

2Ob22b11

1O

Abbildung 1.5: Einfaches verstecktes Markov-Modell

Versteckte Markov-Modelle sind endlichen Automaten, deren innere Zustande alsversteckt(hid-den) bezeichnet werden, dauber ihre Anzahl undUbergange keine direkten Informationen in den

15

Page 16: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

Trainingsdaten enthalten sind. Abbildung1.5zeigt ein einfaches Modell mit zwei SymbolenO1

undO2 sowie den ZustandenS1 undS2.

Zum Anlernen ist eine Folge von Symbolen gegeben, wobei ein SymbolOj mit der Wahrschein-lichkeit bij vom ZustandSi emittiert wird. DieUbergange zwischenSi undSj werden mit derWahrscheinlichkeitaij , die Startwahrscheinlichkeit jedes Zustands mitπi modelliert.

Fur die Angriffserkennung sind vor allem die zwei folgenden Vorgange auf den verstecktenMarkov-Modellen von Interesse:

1. Erlernen eines ModellsFur das Erlernen eines Modells ist eine Eingabefolge und die Anzahl der inneren Zustandegegeben. Nach dem Baum-Welch-Algorithmus [DHS00] werden die Parameteraij, bij,undπi durch mehrfaches vor- und ruckwartiges Durchlaufen des Automaten erlernt.

2. Evaluationuber ein ModellBei diesem Problem ist ein Modell und eine Folge gegeben. Die Aufgabe ist es, zu evalu-ieren, mit welcher Wahrscheinlichkeit die Folge von diesem Modell generiert wurde. Einvorwartiges Durchlaufen des Modells erzeugt genau diese Wahrscheinlichkeit.

Die Arbeit [Rab89] vertieft die Theorie der versteckten Markov-Modelle und zeigt Details undProbleme der Implementierung des Baum-Welch-Algorithmus auf.

1.2.3 Neuronales Lernen

Backpropagation-Algorithmus

Der Backpropagation-Algorithmusist einer der meist genutzten und effizientesten Algorithmenzum Anlernen von kunstlichen neuronalen Netzen.

H1

1C

OI

Abbildung 1.6: Elman-Netz

Die entsprechendenBackpropagation-Netzehaben ei-ne mehrschichtige Struktur, die sich in eine Eingabe-schicht I, mehrere versteckte SchichtenHi und ei-ne AusgabeschichtO unterteilt. Jede Schicht kannuber eine unterschiedliche Anzahl an kunstlichen Neu-ronen verfugen, wobei alle Neuronen einer Schichtmit allen Neuronen der nachsten Schicht verbundensind [Roj96].

Fur das Losen zeitabhangiger Aufgaben konnenruckgekoppelte KontextschichtenCi zum Modell hin-zugefugt werden, wie z. B. bei Elman-Netzen [Elm90,Elm91]. Die Netze werden dann alsrekurrentbezeich-net. Abbildung1.6zeigt ein einfaches Elman-Netz.

16

Page 17: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

Die Verbindungen zwischen den Neuronen sind gewichtet und die entsprechendenGewichtsma-trizenwerden in drei iterativ wiederholten Schritten erlernt [Roj96, S. 149ff]:

1. PropagationDie Eingabe wird durch das Netz propagiert, d. h. in jedem Neuron wird eine Schwellwert-funktion, z. B. eine Sigmoide, fur die Summe der gewichteten Eingabewerte berechnet unddas Ergebnis an die Neuronen der nachsten Schicht weitergeleitet.

2. RuckpropagationBei diesem Schritt wird das Netz ruckwartig durchlaufen und der Gesamtfehler zur Einga-beschicht propagiert. Als Funktion innerhalb der Neuronen dient die erste Ableitung derSchwellwertfunktion, so dass an der Eingabeschicht die partielle Ableitung des Gesamt-fehlers errechnet wird.

3. AnpassungDie errechnete partielle Ableitung erlaubt eine Anpassung der Gewichtsmatrizen, so dassder Gesamtfehler minimiert wird.

Zum Anlernen von rekurrenten neuronalen Netzen mussen die drei Schritte leicht modifiziertoder die Ruckkoppelungen entfaltet werden [Moz93, DHS00].

Verschiedene Varianten von Backpropagation-Algorithmen unterscheiden sich maßgeblich inder Art und Weise der Anpassung der Gewichtsmatrizen. Effiziente Algorithmen sind z. B. derAdaptivschritt-Algorithmus RProp [RB92, Rie94] und seine hybride Erweiterung QRProp [PR96].

1.2.4 Empirisches Lernen

Support-Vektor-Maschinen

Support-Vektor-Maschinen(SVM) sind ein Modell des empirischen Lernens. Grundlage derSVM ist die Klassifikation der Eingabedaten durch eineoptimale Hyperebene[Bur98].

Eine optimale Hyperebene trennt zwei Klassen von Vektoren und besitzt zu beiden Klassen einenmaximalen Rand. Die Vektoren mit großter Nahe zur Hyperebene werden alsSupport-Vektorenbezeichnet und bilden die Hypothese des SVM-Modells.

Eine lineare Trennung durch eine Hyperebene ist in der Praxis oft nicht moglich. Die Idee derSVM ist es, die Eingabedaten vor der Bestimmung der Hyperebene aus dem Eingaberaum ineinenMerkmalsraumabzubilden, der eine sehr hohe Dimension besitzen kann und eine Tren-nung der Klassen zulasst.

Da alle Berechnungen im Merkmalsraumuber Skalarprodukte erfolgen, kann eineKernfunktiondefiniert werden, die diese bestimmt, ohne tatsachlich in die hohe Dimension des Merkmals-raums zu wechseln [DHS00].

17

Page 18: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

Zusammenfassend lasst sich der Lernvorgang einer Support-Vektor-Maschine als ein quadrati-sches Optimierungsproblem beschreiben:

MinimiereQ(α) =l∑

i=1

αi −1

2

l∑i=1

l∑j=1

didjαiαjK(xi, xj)

unterl∑

i=1

diαi = 0 undα1 ≥ 0, . . . , αl ≥ 0

Hierbei istl die Anzahl der Trainingsvektoren,αi ein Lagrange-Multiplikator,xi ein Trainings-vektor, der durchdi ∈ −1, +1 einer Klasse zu geordnet ist, undK eine Kernfunktion.

Abbildung1.7verdeutlicht die Idee von Eingabe- und Merkmalsraum an einem klassischen Bei-spiel. In Teil1.7(a) ist die XOR-Funktionf im Eingaberaum−1, +12 dargestellt. Es existiertkeine Hyperebene (Gerade), die die negativen und positiven Punkte trennt. In Teil1.7 (b) wirdf uber die Funktionφ(x1, x2) = (x1, x2, x1x2) in einen Merkmalsraum abgebildet, in dem eineoptimale HyperebeneH mit maximalem Randµ existiert.

-2

-1

0

1

2

-2 -1 0 1 2

x2

x1

+1

+1

-1

-1

2

2

3

3

(a) XOR-Funktionf

+1

+1

-1-1

µ

H

?

6

6

?

2

2

33

-2 -1 0 1 2x1 -2

-10

12

x2

-1

0

1

x1x2

(b) Abbildung der XOR-Funktionφ(f)

Abbildung 1.7: XOR-Funktion im Eingabe- und Merkmalsraum

SVM konnen auch zur Approximation bzw. Regression genutzt werden. Die Hyperebene wirdhierbei so bestimmt, dass die meisten Vektoren innerhalb des Randes der Ebene liegen. Der Randentspricht einem gewahlten Approximationsfehler. Die Hyperebene approximiert somit die denVektoren zu Grunde liegende Funktion [VGS97].

18

Page 19: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

2 Stand der Forschung

In diesem Kapitel werden wichtige Forschungsarbeiten zum maschinellem Lernen in IDS vor-gestellt und diskutiert. Grundlage aller Arbeiten ist das Erstellen von Profilen, die das Verhaltenvon Nutzern oder Programmen modellieren und entsprechend der verwendeten Lernalgorithmenals regelbasierte, stochastische, neuronaleoderempirische Profilebezeichnet werden. Schwer-punkte fur die Diskussion jeder Arbeit bilden die folgenden drei Fragestellungen:

1. DatenquelleWelche Daten werden erhoben und welche Formatierung erfolgt, bevor diese als Eingabe-daten fur einen Lernalgorithmus genutzt werden?

2. AnalysekonzeptWelche Form des Lernens wird genutzt und wie werden die verschiedenen Parameter derLernalgorithmen bestimmt?

3. BewertungWelche Ergebnisse werden erzielt und welche Bereiche der Forschungsarbeit sind positivbzw. negativ zu werten?

Bevor die Forschungsarbeiten detailliert vorgestellt werden, folgt eine Einfuhrung in die Evalua-tion von IDS, die eine einheitliche Bewertung der Arbeiten ermoglicht.

2.1 Evaluation von IDS

Um die Leistungsfahigkeit eines IDS zu bewerten, mussen etliche Faktoren berucksichtigt wer-den, wie z. B. die Datenquellen, der Einsatzbereich oder die Handhabbarkeit des Systems. Furdas Feld des maschinellen Lernens ist vor allem die Leistungsfahigkeit des Analysekonzeptszu untersuchen, dasuber dieErkennungs-und False-Positive-Rate, die Receiver-Operating-Charakteristikund denOperationsbereichevaluiert werden kann [MHL+03].

2.1.1 Erkennungs- und False-Positive-Rate

Zur Evaluation eines Analysekonzepts wird diesesdn normalen Daten undda Angriffen aus-gesetzt. Anhand der erkannten Angriffe konnen verschiedene Wahrscheinlichkeiten bestimmtwerden, die dokumentieren wie gut das verwendete Analysekonzept Angriffe erkennt und wiehaufig falsch erkannte Angriffe auftreten.

19

Page 20: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

– ErkennungsrateP (ntp)

Aus der Anzahlntp der erkannten Angriffe (True Positives) lasstsich die WahrscheinlichkeitP (ntp) fur das Erkennen eines Angriffserrechnen.

P (ntp) =ntp

da

– False-Positive-RateP (nfp)

Aus der Anzahlnfp der falschlich erkannten Angriffe (False Posi-tives) lasst sich die WahrscheinlichkeitP (nfp) fur das falsche Er-kennen eines Angriffs errechnen.

P (nfp) =nfp

dn

Die WahrscheinlichkeitenP (nfn) fur nicht erkannte Angriffe (False Negatives) undP (ntn) furerkannte normale Daten (True Negatives) konnen aus den obigen Werten berechnet werden, sodass es genugt, die WahrscheinlichkeitenP (ntp) undP (nfp) fur eine Evaluation zu betrachten.

nfn = da − ntp

P (nfn) = 1− P (ntp)

ntn = dn − nfp

P (ntn) = 1− P (nfp)

Die Tabelle2.1 verdeutlicht die Beziehung zwischen den verschiedenen Wahrscheinlichkeitenund Zustanden eines IDS.

Angriff kein Angriff

Wahrscheinlichkeit Zustand Wahrscheinlichkeit Zustand

Detektion P (ntp) True Positive P (nfp) False Positive

Keine Detektion P (nfn) False Negative P (ntn) True Negative

Tabelle 2.1: Wahrscheinlichkeiten und Zustande eines IDS

Im Idealfall wird ein IDS mit einer Erkennungsrate vonP (ntp) = 1 Angriffe erkennen unddabei keine normalen Daten als Angriff einstufen, also eine False-Positive-Rate vonP (nfp) = 0aufweisen. Das Verhaltnis von maximaler Erkennungsrate zur entsprechenden False-Positive-Rate ist daher ein gutes Kriterium zur Bewertung eines Analysekonzepts.

2.1.2 Receiver-Operating-Charakteristik

Ein haufig genutztes, graphisches Kriterium zur Bewertung eines Analysekonzepts ist die so ge-nannteReceiver-Operating-Charakteristik(ROC), die neben der Erkennungs- und False-Positive-Rate auch die Sensitivitat des untersuchten IDS einbezieht [MHL+03].

20

Page 21: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

Die Sensitivitat eines IDS ist definiert als ein stetiger WertS, der bestimmt wie scharf das Analy-sekonzept auf der Datenquelle operiert. Bei minimaler SensitivitatS = 0 erkennt das IDS keinenAngriff, bei maximaler SensitivitatS = 1 werden alle Daten als Angriffe klassifiziert. Der eben-falls gebrauchliche Begriff derToleranzentspricht der antiproportionalen Sensitivitat.

Ein ROC-Graph zeigt die False-Positive-RateP (nfp) auf der X-Achse und die ErkennungsrateP (ntp) auf der Y-Achse. Die Sensitivitat wachst entlang der X-Achse von links nach rechts. DiePunkte (0,0) mit minimaler Sensitivitat und (1,1) mit maximaler Sensitivitat sind auf Grund derobigen Definition in jedem ROC-Graphen enthalten.

Maximale ROCMinimale ROC

0

0,2

0,4

0,6

0,8

1

0 0,2 0,4 0,6 0,8 1

Erk

ennu

ngsr

ate

False−Positive−Rate

Senstivität

Toleranz

(a) Maximaler und minimaler ROC Graph

0

0,2

0,4

0,6

0,8

1

0 0,2 0,4 0,6 0,8 1Sensitivität

ErkennungsrateFalse−Positive−Rate

Operationsbereich

Erk

ennu

ngs−

/Fal

se−P

ositi

ve−R

ate

(b) Operationsbereich eines IDS

Abbildung 2.1: Graphische Kriterien der IDS-Evaluation

Abbildung 2.1 (a) zeigt die maximale und minimale ROC. Im Fall der maximalen ROC sindnur die drei Punkte (0,0), (0,1) und (1,1) gesetzt, d. h. fur jeden Sensitivitatswert0 < S < 1gilt P (ntp) = 1 und P (nfp) = 0. Fur die minimale ROC giltP (ntp) = P (nfp), d. h. dieAngriffserkennung lasst sich von einer zufalligen Klassifikation nicht unterscheiden.

2.1.3 Operationsbereich

In der Arbeit [Rie03] wird ein zusatzliches Kriterium zur Evaluation eines Analysekonzepts ein-gefuhrt, derOperations-oderKonfigurationsbereich. Die Große dieses Bereichs beschreibt, wieflexibel die Sensitivitat des IDS gewahlt werden kann.

Der Operationsbereich ist demnach ein Intervall der Sensitivitat, in dem das IDS mit einer hohenErkennungsrate (z. B.uber 90%) und einer geringen False-Positive-Rate (z. B. unter 10%) ope-riert. Er wird durch einen Graphen visualisiert, wobei die Sensitivitat auf der X-Achse und die

21

Page 22: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

Erkennungs- und False-Positive-Rate auf der Y-Achse aufgetragen werden. Abbildung2.1 (b)zeigt den Operationsbereich an einem Beispiel.

2.2 Nutzerprofile

In den ersten Arbeiten zu maschinellem Lernen in HIDS [DBS92, LB97] wird das Verhalten vonNutzernuberwacht und inNutzerprofilenmodelliert. Grundlage ist die Beobachtung, dass ver-schiedene Nutzer die gleichen Aufgaben mit unterschiedlichen Programmen bearbeiten. Tabel-le 2.2zeigt verschiedene haufig genutzte Unix-Programme, die jeweils gleiche Aufgabengebieteabdecken. Eine Sequenz von ausgefuhrten Programmen wird im Weiteren alsProgrammsequenzbezeichnet.

Aufgabengebiet Unix-Programme

Editieren eines Textes vi emacs pico joe xedit dtpad

Lesen von Emails mail pine elm mutt xfmail dtmail

Tabelle 2.2: Verschiedene Unix-Programme fur zwei Aufgabengebiete

Kann nun fur einen Nutzer sein individuelles Verhalten, d. h. die typische Wahl und Reihenfol-ge der ausgefuhrten Programme durch einen Algorithmus des maschinellen Lernens modelliertwerden, so entsteht ein Nutzerprofil. Ein solches Profil eignet sich, um alle Angriffe zu erkennen,bei denen ein Angreifer unter der Identitat eines Nutzers agiert.

2.2.1 N-Gramme

Die Forschungsarbeiten [LB97, LB99] von Lane und Brodley sowie [LSM99] von Lee et al.nutzen diese Eigenschaft, um stochastische Profile zu modellieren, die aufN -Grammen basieren.

Datenquelle

Fur die Arbeit [LB97] wurden hierzu vier Nutzer eines Unix-Rechnersystems am Purdue Mille-nium Laboruberwacht. Fur jeden dieser Nutzer wurden Sequenzen von ausgefuhrten Program-men aus Shellhistorien gewonnen. Die Sequenzen enthalten neben den Programmnamen auchProgrammoptionen. Ein Beispiel ist die folgende Programmsequenz. Die Anzahl der Parameterist hierbei in spitzen Klammern kodiert.

cd <1> ls -la gunzip -c <1> | (cd / ; tar -xf <1>)

Die Arbeit [LSM99] nutzt einfache Programmsequenzen ohne Programmoptionen, die aus denIDS-Evaluationsdaten der DARPA [LC+00] gewonnen wurden und das Verhalten von sechs ver-schiedenen Nutzern eines Unix-Rechnersystems umfassen.

22

Page 23: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

Analysekonzept

Zum Erlernen der Nutzerprofile werden die Programmsequenzen zeichenweise inuberlappendeTeilsequenzen einer festen Lange zerlegt, dieN -Grammen entsprechen. Lane und Brodley ver-wenden Langen zwischen 8 und 12 wahrend Lee et al. die Lange 5 wahlen. Die gespeichertenN -Gramme jedes Nutzers dienen als Nutzerprofil.

Zur Analyse einer neuen Programmsequenz wird diese ebenfalls inN -Gramme zerlegt und mitdenN -Grammen eines Nutzerprofils verglichen. In [LB97, LB99] erfolgt dieser Vergleich durcheineAhnlichkeitsfunktion, die benachbarteUbereinstimmungen von Zeichen hoher gewichtet alsentfernte. Da diese Funktion stark fluktuiert, wird zusatzlich eine Glattung vorgenommen. EinSchwellwert bestimmt, wann dieAhnlichkeiten zu gering sind und eine Anomalie vorliegt.

Das in [LSM99] verwendete Konzept ist einfacher. Der Vergleich derN -Gramme erfolgt aufvollstandigeUbereinstimmung. Ein Schwellwert bestimmt, wann die Anzahl derUbereinstim-mungen zu gering ist und eine Anomalie vorliegt.

Bewertung

Die Ergebnisse aus [LB97, LB99] geben fur jeden Nutzer eine Erkennungs- und False-Positive-Raten an. Im Durchschnitt lasst sich fur [LB97] eine Erkennungsrate vonP (ntp) = 0, 823 undeine False-Positive-Rate vonP (nfp) = 0, 153 bestimmen. In [LSM99] werden keine zusammen-fassenden Angabenuber die Erkennungs- und False-Positive-Rate der Nutzerprofile gemacht.

Es zeigt sich, dassN -Gramme nur bedingt als Nutzerprofile verwendet werden konnen. AndereLernalgorithmen wie neuronale Netze erzielen wesentlich bessere Ergebnisse.

2.2.2 Neuronale Netze

Neuronale Netze werden in [RLM98] von Ryan et al. zur Klassifikation und in [DBS92] zur Ap-proximation von Nutzerverhalten benutzt. Die erlernten Gewichtsmatrizen der neuronalen Netzebilden hierbei die entsprechenden Nutzerprofile.

Datenquelle

Fur [RLM98] wurde das Verhalten von zehn Nutzern auf einem Rechnersystem der Universitatvon Texasuberwacht. Es wurden 100 Programme ausgewahlt und fur jedes taglich aufgezeich-net, wie haufig es durch einen Nutzer aufgerufen wird. Es entsteht fur jeden Nutzer ein 100-dimensionaler Eingabevektor, desseni-te Komponente die Anzahl der Aufrufe desi-ten Pro-gramms enthalt.

Fur [DBS92] wurden 60 Programmeuberwacht. Fur jeden Nutzer wurde wahrend des Aufrufseines Programmsi ein 60-dimensionaler Eingabevektor erstellt, desseni-te Komponente auf 1und alle weiteren auf 0 gesetzt sind.

23

Page 24: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

Analysekonzept

Als Lernmodell dient in [RLM98] ein Backpropagation-Netz mit 100 Neuronen in der Eingabe-schicht, 30 Neuronen in einer versteckten Schicht und 10 Neuronen in der Ausgabeschicht. JedesElement des 10-dimensionalen Ausgabevektors reprasentiert einen der 10 Nutzer desuberwachtenRechnersystems. Das Netz wird so trainiert, dass fur einen Eingabevektor des Nutzersi nur diei-te Komponente des Ausgabevektors 1 ist und alle anderen Komponenten 0 sind. Der Vektor(0, 0, 0, 0, 1, 0, 0, 0, 0, 0) wird so z. B. mit dem Nutzer5 assoziiert.

Das neuronale Netz wird nun genutzt, um zu klassifizieren, ob sich alle Nutzer ihrem Profil ent-sprechend verhalten. Wird keine Anomalie erkannt, so wird das Netz mit den aktuellen Datenerneut trainiert.

In [DBS92] wird ein rekurrentes neuronales Netz mit 60 Neuronen in der Ein- und Ausgabe-schicht verwendet, das zu einem aktuellen Programm das folgende approximiert. In dieser For-schungsarbeit dient das Netz der Datenreduktion fur weitere Untersuchungen und nicht der Ano-malieerkennung. Korrekt approximierte Programme werden vom System gefiltert.

Bewertung

Die Untersuchungen aus [RLM98] zeigen eine Erkennungsrate vonP (ntp) = 0, 96 bei ei-ner False-Positive-Rate vonP (nfp) = 0, 07 und ubertreffen damit die Werte aus den Arbei-ten [LB97, LB99], die N -Gramme als Nutzerprofile verwenden.

Debar et al. geben in [DBS92] an, 80% des Datenstroms mit Hilfe des beschriebenen Analyse-konzepts zu filtern. Da keine Anomalieerkennung verwendet wird, werden keine Erkennungs-und False-Positive-Raten angegeben.

Es ergeben sich allerdings grundsatzliche Nachteile bei der Anomalieerkennung mit Nutzerpro-filen:

1. Wird ein Systemkonto von mehreren Nutzern verwendet, wie fur den Supernutzer unterUnix ublich, so kann kein einheitliches Nutzerprofil modelliert werden.

2. Sehr haufig werden Dienste wie z. B. Webserver unter virtuellen Nutzern betrieben, diekein eigenes Verhalten zeigen. Auch hier konnen Nutzerprofile nicht eingesetzt werden.

3. Die Analyse kann nicht zeitnah geschehen, da großere Zeitabstande zwischen dem Ausfuh-ren von Programmen liegen konnen. Einzelne Programme konnen so bereits erheblichenSchaden anrichten.

Die beschriebenen Nachteile sind schwerwiegend, so dass Nutzerprofile kein geeignetes Modellfur die Anomalieerkennung in aktuellen IDS darstellen.

24

Page 25: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

2.3 Programmprofile

Parallel zu den Arbeiten von Brodley und Lane entwickelt Stephanie Forrest ein IDS in Analogiezum biologischen Immunsystem. Als erste Forscherin modelliert sie mit maschinellem Lernendas Verhalten von Programmen [FHSL96]. Es entstehenProgrammprofile, die es erlauben un-abhangig von den agierenden Nutzern Anomalien zu erkennen.

Das Verhalten eines Programms wird maßgeblich durch die vom Betriebssystem zur VerfugunggestelltenSystemaufrufebestimmt, da nur sie den Zugriff auf die Ressourcen des Rechnersystemserlauben [Tan02]. Ein Angriff auf ein Programm muss zwangslaufig die Sequenz der genutztenSystemaufrufe manipulieren, um Ressourcen des Systems eigenstandig zu nutzen. Abbildung2.3zeigt eineSystemaufrufsequenzdes Programmsgzip .

close()

stat() open() close() open()

close()unlink()chown()

chmod() utime() close() open()open()

execve()

exit()

Abbildung 2.2: Systemaufrufsequenz des Programmsgzip

Systemaufrufe erfolgen mit einer hohen Frequenz, oftmalsuber 100 pro Sekunde, so dass eineAnomalieerkennung zeitnah erfolgen kann und sich ein weiterer Vorteil gegenuber den Nutzer-profilen ergibt.

Bei allen Forschungsarbeiten zu Programmprofilen werden die Systemaufrufe durch naturlicheoder ganze Zahlen kodiert. Meist ist eine solche Kodierung schon durch das Betriebssystemvorgeben. Es werden aber auch eigene Nummerierungen wie z. B. in [End98] oder [Rie03] ver-wendet.

2.3.1 N-Gramme

Die erste Arbeit [FHSL96] von Forrest stellt ein Analysekonzept vor, dasN -Gramme aus Sy-stemaufrufsequenzen gewinnt und diese als stochastische Profile nutzt. Dieses Konzept wird invielen Arbeiten wie z. B. [LSC97, HFS98, WFP99, GSS99a, MG00, SF00] evaluiert und dientoftmals dem Vergleich mit anderen Algorithmen des maschinellen Lernens in HIDS. Eine theo-retische Analyse ist in [D’h96, DFH96] zu finden.

Datenquelle

Fur [FHSL96] wurden die Programmesendmail und lpr auf einem Unix-Rechnersystemuberwacht und analysiert. Spatere Arbeiten wie [GSS99a] und [MG00] erweitern die Untersu-chung durch die Evaluationsdaten der DARPA [LC+00].

25

Page 26: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

Analysekonzept

Zum Erlernen eines Programmprofils werden die Systemaufrufsequenzen eines Programms inN -Gramme der Lange 10 zerlegt und in einemN -Gramm-Baum gespeichert. In [HFS98] wirdzusatzlich die Haufigkeit der erlerntenN -Gramme in den Blattern des Baumes verwaltet.

In der Testphase kann nun eine unbekannte Systemaufrufsequenz ebenfalls inN -Gramme zerlegtund mit denN -Grammen des entsprechenden Programmprofils verglichen werden. Die Anzahlan Ubereinstimmungen bestimmt, ob eine Anomalie vorliegt. Die gespeicherten Haufigkeitenwerden in [HFS98] zusatzlich zur Gewichtung derUbereinstimmungen genutzt.

Bewertung

Da in den Forschungsarbeiten unterschiedlich große Evaluationsdaten eingesetzt werden, erge-ben sich verschiedene Erkennungs- und False-Positive-Raten. Die Untersuchungen aus [MG00]erfolgten auf den umfangreichen Daten der DARPA und erlauben den Vergleich mit anderenAnalysekonzepten. Es wird eine maximale Erkennungsrate vonP (ntp) = 0, 94 bei einer False-Positive-Rate vonP (nfp) = 0, 013 angeben. Abbildung2.3 (a) zeigt den entsprechenden ROC-Graphen. Die X-Achse ist im Intervall[0, 1

10] dargestellt.

0

0,2

0,4

0,6

0,8

1

0 0,02 0,04 0,06 0,08 0,1

Erk

ennu

ngsr

ate

False−Positive−Rate

N−Gramme

(a)N -Gramme

0

0,2

0,4

0,6

0,8

1

0 0,02 0,04 0,06 0,08 0,1

Erk

ennu

ngsr

ate

False−Positive−Rate

String−Transducer

(b) String-Transducer

Abbildung 2.3: ROC-Graphen fur stochastische Profile [MG00]

2.3.2 String-Transducer

NebenN -Grammen untersuchen Ghosh und Michael in den Arbeiten [GMS00, MG00] das sto-chastische Lernmodell der String-Transducer und generieren mit diesem Programmprofile. Sienehmen an, dass sich das Verhalten von Programmen mit einfachen stochastischen Lernmodellen

26

Page 27: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

beschreiben lasst. Sie halten den Einsatz von komplexen Modellen wie neuronalen Netzen oderversteckten Markov-Modellen nicht zwingend fur notwendig.

Datenquelle

Wie auch bei den Untersuchungen zuN -Grammen wurden die Systemaufrufsequenzen fur jedesProgramm aus den Daten der DARPA gewonnen und zur Konstruktion der String-Transducergenutzt.

Analysekonzept

Die Systemaufrufsequenzen jedes Programms werden inN - undL-Gramme mitn = 10 undl =1 zerlegt. Wie in Abschnitt1.2.2beschrieben, kann fur jedes Programm ein String-Transducerkonstruiert und als Programmprofil gespeichert werden.

Eine unbekannte Systemaufrufsequenz eines Programms kann als normal oder anomal klassifi-ziert werden, in dem die Abweichung vom Modell des String-Transducers berechnet wird. Abeinem gewahlten Schwellwert signalisiert die Abweichung eine Anomalie.

Bewertung

Aus den Untersuchungen ergibt sich eine Erkennungsrate vonP (ntp) = 0, 94 bei einer False-Positive-Rate vonP (nfp) = 0, 014. Die String-Transducer erreichen damit eine Leistungsfahig-keit, die mit dem Analysekonzept derN -Gramme vergleichbar ist. Abbildung2.3 (b) zeigt denentsprechenden ROC-Graphen. Die X-Achse ist im Intervall[0, 1

10] dargestellt.

Ein Vorteil der String-Transducer liegt in der Geschwindigkeit, mit der sie angelernt werdenkonnen. Sie benotigen bei gleicher Leistungsfahigkeit nur ein Funftel der Trainingsdaten imVergleich zuN -Grammen [MG00].

2.3.3 Versteckte Markov-Modelle

Versteckte Markov-Modelle eignen sich ebenfalls zur Analyse von Programmverhalten und wer-den in den Arbeiten [WFP99] von Warrender et al. und [ELS01] von Eskin et al. untersucht.Die erlernten ParameterA, B undπ der Markov-Modelle bilden hierbei die stochastischen Pro-grammprofile.

Datenquelle

Fur die Untersuchungen wurden Systemaufrufsequenzen von acht Programmen aus den Evalua-tionsdaten der DARPA und der Universitat von New Mexico [F+02] verwendet.

27

Page 28: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

Analysekonzept

In [WFP99] wird f ur jedes der untersuchten Programme ein verstecktes Markov-Modell gene-riert. Die Systemaufrufsequenzen werden hierzu als Folgen von Symbolen interpretiert. Da dieuntersuchten Programme nur einen Teil der verfugbaren Systemaufrufe nutzen, wird die An-zahl der versteckten Zustande mit der Anzahl der verwendeten Systemaufrufe gleichgesetzt. Esentstehen Modelle mit bis zu 60 versteckten Zustanden. Das Anlernen erfolgt mit dem Baum-Welch-Algorithmus.

In [ELS01] werden so genannteSparse-Markov-Transducer(SMT) verwendet, die azyklischenversteckten Markov-Modellenahneln und einfacher zu trainieren sind. Fur jedes Programm wer-den mehrere SMT erstellt, deren Ausgabewerte gemittelt werden.

Bei beiden Analysekonzepten wird eine unbekannte Systemaufrufsequenzuber ein Markov-Modell analysiert. Hierzu werden die relativen Wahrscheinlichkeiten fur die einzelnen System-aufrufe miteinander entsprechend des Modells verknupft. Die Endwahrscheinlichkeit ist der An-omaliewert.

Bewertung

Das Analysekonzept erreicht in [WFP99] eine Erkennungsrate vonP (ntp) = 0, 969 bei einerFalse-Positive-Rate von unter 0,001. In [ELS01] werden keine zusammenfassenden Angabenuber die Erkennungs- und False-Positive-Rate von SMT gemacht. Da in [WFP99] und [ELS01]nur das Verhalten von acht Programme untersucht wird, ist anzunehmen, dass die False-Positive-Rate bei Untersuchungen auf umfangreicheren Evaluationsdaten hoher ausfallt.

Im Vergleich zuN -Grammen und String-Transducern zeigen versteckte Markov-Modelle einehohere Leistungsfahigkeit. Das Anlernen hingegen ist wesentlich zeitaufwendiger. So benotigtedas Erlernen der langsten Systemaufrufsequenz aus [WFP99] nahezu zwei Monate Rechenzeitauf einem damals aktuellen Sun-Rechnersystem.

2.3.4 RIPPER-Algorithmus

Ein weiterer Ansatz zu maschinellem Lernen in HIDS wird in [LSC97] von Lee et al. und[WFP99] von Warrender et al. vorgestellt. Anstelle von Wahrscheinlichkeiten werden einfacheRegeln durch den RIPPER-Algorithmus aus Systemaufrufsequenzen gebildet. Die fur jedes Pro-gramm entstehende Menge von Regeln wird als Programmprofil zur Anomalieerkennung ge-nutzt.

Datenquelle

Fur [LSC97] wurde ausschließlich das Programmsendmail auf einem Unix-Rechnersysteman der Universitat von Columbiauberwacht. Es wurden Systemaufrufsequenzen fur Normal-verhalten und fur verschiedene Angriffe erzeugt. Fur die spatere Arbeit [WFP99] wurden die

28

Page 29: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

Untersuchungen zum RIPPER-Algorithmus auf acht Programme aus den Evaluationsdaten derDARPA und der Universitat von New Mexico ausgedehnt.

Analysekonzept

Der RIPPER-Algorithmus wird sowohl zur Klassifikation als auch zur Approximation von Sy-stemaufrufsequenzen eingesetzt. Die Systemaufrufsequenzen eines Programms werden hierzu innicht-uberlappende Teilsequenzen der Lange 7 zerlegt. Die einzelnen Elemente der Teilsequen-zen werden als AttributeAi mit 1 ≤ i ≤ 7 definiert.

Fur die Klassifikation wird jede Teilsequenz als normal oder anomal markiert, je nachdem ob sievon Normalverhalten oder einem Angriff stammt. Die entstehenden Regeln klassifizieren ent-sprechend eine unbekannte Sequenz.

Fur die Approximation werden die einzelnen Teilsequenzen um das letzte Element verkurzt, dasapproximiert werden soll. Es entstehen Regeln, die aus einer Teilsequenz der Lange 6 den 7. Sy-stemaufruf bestimmen.

Klassifikationsregeln Approximationsregeln

normal : − A2 = 104, A7 = 112.

normal : − A2 = 104, A7 = 104.

anomal : − true.

38 : − A3 = 40, A4 = 4.

102 : − A1 = 106, A4 = 101.

5 : − true.

Tabelle 2.3: Beispiele fur Regeln von Programmprofilen [LSC97]

Tabelle2.3zeigt Beispiele von Regeln fur beide Varianten in Prolog-Notation. Die Regeln habendie Forma : − b, c., die in boolscher Notationb ∧ c → a entspricht.

Bewertung

Die Untersuchungen aus [WFP99] beschreiben eine Erkennungsrate vonP (ntp) = 0, 953 bei ei-ner False-Positive-Rate von unter 0,001. Fur [LSC97] werden keine zusammenfassenden Erken-nungs- und False-Positive-Raten angegeben. Wie auch bei den Untersuchungen zu verstecktenMarkov-Modellen aus [WFP99] ist anzunehmen, dass die False-Positive-Rate bei einer Evalua-tion auf umfangreicheren Daten ansteigt.

2.3.5 Neuronale Netze

In vielen Forschungsarbeiten werden neuronale Netze zur Analyse von Programmverhalten un-tersucht. Die fruhen Arbeiten [End98, GSS99a] klassifizieren hierzu Systemaufrufsequenzen,wahrend neuere Forschungsarbeiten [GMS00, DCD+01, Rie03] diese approximieren.

29

Page 30: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

Im Folgenden wird die Arbeit [GSS99a] von Ghosh et al. und die Studienarbeit [Rie03] vonRieck vorgestellt, da sie fur den Bereich der Klassifikation bzw. Approximation die besten Er-gebnisse beschreiben.

Datenquelle

Fur die Untersuchungen in beiden Arbeiten wurden die Evaluationsdaten der DARPA verwendet.In [Rie03] erfolgte zusatzlich eine Analyse auf Evaluationsdaten, die von realen Rechnersyste-men stammen und am Institut fur Informatik an der Freien Universitat Berlin erhoben wurden.

Analysekonzept

Die Systemaufrufsequenzen werden in nicht-uberlappende Teilsequenzen einer festen Lange zer-legt. Diei-te Teilsequenz entspricht hierbei dem Eingabevektorii.

Das neuronale Netz aus [GSS99a] besteht aus einer 50-dimensionalen versteckten Schicht undeiner 1-dimensionalen Ausgabeschicht. Der aus dem Eingabevektorii errechnete Ausgabevek-tor oi enthalt den Anomaliewert des Analysekonzepts. Das Netz wird anfanglich mit zufalligenVektoren angelernt, die als Anomalien gewertet werden[oi = (1)]. Anschließend werden dieVektoren der Systemaufrufsequenzen als normal erlernt[oi = (0)].

In [Rie03] wird ein Elman-Netz eingesetzt, dessen Ein- und Ausgabeschicht eine identische An-zahl von Neuronen besitzen. Die versteckte Schicht enthalt 40 Neuronen. Das Netz wird so trai-niert, dass zu einem gegebenen Eingabevektorii der folgende Vektor der Systemaufrufsequenzapproximiert wird[oi = ii+1]. Der Anomaliewert ergibt sich aus dem Fehler zwischen demtatsachlich folgenden Vektor und der Approximation.

In beiden Arbeiten wird der Lochrige-Eimer-Algorithmus (Leaky Bucket Algorithm) verwendet.Der Ausgabevektor bzw. Fehlerwert wird in jedem Schritt auf eine Variable addiert, die konti-nuierlich um einen konstanten Wert reduziert wird. Diese Variable symbolisiert den

”lochrigen

Eimer“. Steigt sie trotz Reduktionuber eine gewahlte Marke, so liegt eine Anomalie vor.

Bewertung

Das Backpropagation-Netz erreicht eine Erkennungsrate vonP (ntp) = 0, 773 bei einer False-Positive-Rate vonP (nfp) = 0, 022. Das Konzept erzielt somit eine deutliche schlechtere Lei-stung gegenuber den anderen vorgestellten Analysekonzepten.

Die Elman-Netze aus [Rie03] erzielen eine Erkennungsrate vonP (ntp) = 1, 0 bei einer False-Positive-Rate vonP (nfp) = 0, 054. Als erstes vorgestelltes Konzept erreichen die Elman-Netzeeine vollstandige Erkennung aller in den Evaluationsdaten enthaltenen Angriffe. Es ergibt sichallerdings eine hohe False-Positiv-Rate. Die Ergebnisse beider Arbeiten sind als ROC-Graphenin Abbildung2.4dargestellt.

30

Page 31: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

0

0,2

0,4

0,6

0,8

1

0 0,02 0,04 0,06 0,08 0,1

Erk

ennu

ngsr

ate

False−Positive−Rate

Backpropagation−Netze

(a) Backpropagation-Netze [GSS99a]

0

0,2

0,4

0,6

0,8

1

0 0,02 0,04 0,06 0,08 0,1

Erk

ennu

ngsr

ate

False−Positive−Rate

Elman−Netze

(b) Elman-Netze [Rie03]

Abbildung 2.4: ROC-Graphen fur neuronale Netze

2.3.6 Support-Vektor-Maschinen

In den letzten Jahren haben Support-Vektor-Maschinen (SVM) an Bedeutung gewonnen. Den-noch existiert zur Zeit keine Arbeit, die dieseuberwacht anlernt und zur Anomalieerkennung ineinem HIDS nutzt. Im Folgenden wird daher die Arbeit [EAP+02] diskutiert, die SVM unuber-wacht (unsupervised) anlernt. Im Bereich der NIDS werden SVM vor allem von Srinivas Muk-kamala et al. [MJS02] erfolgreich zur Angriffsklassifikation eingesetzt.

Datenquelle

Fur [EAP+02] wurden Systemaufrufsequenzen aus den Evaluationsdaten der DARPA gewon-nen. Es wurden sowohl Sequenzen von Angriffen als auch von angriffsfreiem Verhalten ohneDifferenzierung erhoben. Dieser Ansatz entspricht daher unuberwachtem Lernen.

Analysekonzept

Die Systemaufrufsequenzen werden in nicht-uberlappende Teilsequenzen einer festen Lange zer-legt. Aus jeder Teilsequenz wird ein Vektor gebildet, wobei die (i·l)-te Komponente auf 1 gesetztist, wenn der Systemaufrufi an der Positionl in der Teilsequenz erfolgt.

Die SVM werden nun genutzt, um diese Vektoren zu approximieren. Hierbei wird der Randso bestimmt, dass die Mehrheit der Vektoren eingeschlossen ist. Zur Analyse einer Systemauf-rufsequenz wird die Anzahl der außerhalb liegenden Vektoren berechnet und als Anomaliewertinterpretiert.

31

Page 32: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

Bewertung

Da der Schwerpunkt von [EAP+02] auf unuberwachtem Lernen liegt, lasst sich dieses Ana-lysekonzept nur teilweise mit anderen Konzepten vergleichen. Es wird keine False-Positive-Rate angegeben. Die Erkennungsrate liegt beiP (ntp) = 1, 0. Es ist notig, die Experimente mituberwachtem Lernen zu wiederholen, um einen Vergleich zu anderen Konzepten zu ermoglichen.

2.4 Zusammenfassung

Die vorgestellten Ergebnisse zeigen, dass Algorithmen des maschinellen Lernens erfolgreich zurAngriffserkennung in HIDS eingesetzt werden konnen. Bei nahezu allen Analysekonzepten kanneine Erkennungsrate vonuber 90% erzielt werden.

Es lassen sich drei grundsatzliche Typen der vorgestellten Analysekonzepte unterscheiden:

T1 Stochastische AnalyseBei diesem Typ wird normales Verhalten von Nutzern oder Programmen verwendet, umein stochastisches Modell zu erstellen. Die Ausgabe dieser Analysekonzepte ist ein Wert,der angibt mit welcher Wahrscheinlichkeit das aktuelle Verhalten normal ist.

T2 KlassifikationBei der Klassifikation werden die Lernalgorithmen sowohl mit normalem Verhalten alsauch mit Angriffen angelernt. Die Ausgabe dieser Analysekonzepte ist ein Wert, der dasaktuelle Verhalten zwischen 0 (normal) und 1 (anomal) klassifiziert.

T3 ApproximationIn diesem Fall wird normales Verhalten von Nutzern oder Programmen genutzt, um eineApproximation zu erlernen. Die Ausgabe dieser Analysekonzepte ist eine dem aktuellenVerhalten entsprechende Vorhersage eines Programms oder Systemaufrufs.

In der Praxis bieten sich Konzepte vom Typ T1 und T3 an, da fur das Anlernen ausschließlichNormalverhalten benotigt wird, welches mit geringem Aufwand erhoben werden kann. Das Auf-zeichnen von Angriffen fur Analysekonzepte vom Typ T2 auf realen Systemen ist problematisch,da leicht die Sicherheit der Rechnersysteme gefahrdet werden kann.

Es ist unerheblich, ob bei einer Datenerhebung auf realen Systemen unwissentlich Angriffe mitin das Normalverhalten einfließen, solange ein ausreichend hohes Volumen an Normalverhaltenerhoben und die Wahrscheinlichkeit fur Angriffe im Vorfeld minimiert wird.

Unterschieden werden zudem Analysekonzepte, die das Verhalten von Nutzern und solche diedas Verhalten von Programmen modellieren. Da Angriffe nicht zwingend das Verhalten vonNutzern beeinflussen bzw. verandern, sind Nutzerprofile nur bedingt zur Anomalieerkennungin HIDS einsetzbar. Tabelle2.4fasst die Erkennungs- und False-Positive-Raten der Analysekon-zepte zusammen, die auf Nutzerprofilen basieren.

32

Page 33: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

Analysekonzept Erkennungsrate False-Positive-Rate Analysetyp

N -Gramme 0,823 0,153 T1

Neuronale Netze 0,960 0,070 T2,T3

Tabelle 2.4: Nutzerprofilbasierte Analysekonzepte

Nahezu alle aktiven Angriffe auf einem Rechnersystem beeinflussen das Verhalten von Program-men. Ausnahmen sind lediglich Angriffe, die vollstandig im Kern des Betriebssystems erfolgen.Programmprofile sind daher besser zur Anomalieerkennung in HIDS geeignet. Die entsprechen-den Analysekonzepte erzielen zudem hohere Erkennungs- und False-Positive-Raten.

Eine besondere Position nehmen Analysekonzepte mit neuronalen Netzen und Support-Vektor-Maschinen ein, da diese 100% aller Angriffe in den entsprechenden Evaluationsdaten identifizie-ren konnten. Tabelle2.5stellt die verschiedenen Analysekonzepte, die Programmprofile nutzen,gegenuber.

Analysekonzept Erkennungsrate False-Positive-Rate Analysetyp

N -Gramme 0,940 0,013 T1

String-Transducer 0,940 0,014 T1

Versteckte Markov-Modelle 0,969 0,001 T1

RIPPER-Algorithmus 0,953 0,001 T2,T3

Neuronale Netze 1,000 0,054 T2,T3

Support-Vektor-Maschinen 1,000 — T2

Tabelle 2.5: Programmprofilbasierte Analysekonzepte

Die vorgestellten Ergebnisse wurden in unterschiedlichen Umgebungen und auf teilweise sehrunterschiedlichen Evaluationsdaten erzielt. Daher muss fur eine bessere Gegenuberstellung derAnalysekonzepte eine Evaluation unter einheitlichen Bedingungen erfolgen. Vor allem die False-Positive-Rate hangt davon ab, wie viel verschiedene Programme in den Untersuchungen betrach-tet werden, welche Komplexitat das Programmverhalten zeigt und inwieweit es reales Verhaltenwiderspiegelt.

Das Analysekonzept der rekurrenten neuronalen Netzen aus [Rie03] zeigt die hochste False-Positive-Rate. Die Ergebnisse aus [Rie03] wurden jedoch auf realen Evaluationsdaten bestimmt,wahrend die meisten der anderen Arbeiten kunstliches Verhalten aus den Evaluationsdaten derDARPA untersuchen.

33

Page 34: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

In keiner der vorgestellten Forschungsarbeiten werden die Ausgabewerte verschiedener Analy-sekonzepte bzw. Lernalgorithmen korreliert. Daher wird in dieser Arbeit erstmals die Korrelationverschiedener Analysekonzepte auf identischen Evaluationsdaten untersucht.

Das umfangreiche Feld des maschinellen Lernens umfasst noch weitere Lernalgorithmen, diein keiner Arbeit zu HIDS untersucht wurden, sich aber dennoch zur Anomalieerkennung eignenkonnten. Im Bereich der NIDS wurden z. B. im Jahr 2003 auf Regressionssplines [MSAR03] undgenetischer Programmierung [MSA03b] basierende Analysekonzepte erfolgreich untersucht.

34

Page 35: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

3 Entwurf eines lernf ahigen HIDS

Die im vorangegangenen Kapitel vorgestellten Ergebnisse motivieren den Entwurf eines lernfa-higen HIDS, das im Rahmen dieser Diplomarbeit implementiert und evaluiert wird. Grundlagedes Entwurfs sind folgende Zielsetzungen:

1. Das HIDS soll eineahnliche oder bessere Erkennungs- und False-Positive-Rate erzielen alsdie Systeme der vorgestellten Forschungsarbeiten. Die Evaluation soll hierbei auf realenDaten erfolgen, um die Praxistauglichkeit des HIDS zu verifizieren.

2. Das HIDS soll mehrere der vorgestellten Analysekonzepte in dynamisch ladbaren Modu-len integrieren, die alslernfahige Modulebezeichnet werden. Die Analysekonzepte sollensynchron operieren, so dass ein direkter Vergleich moglich wird.

3. Das HIDS soll eine Korrelation der Einzelergebnisse der Analysekonzepte unterstutzen.Hierbei sollen die in den Modulen integrierten Lernalgorithmen wiederverwendet werden.

4. Das HIDS soll verteilt konzipiert werden, soweit moglich betriebssystemunabhangig ope-rieren und neue Standards wie IDMEF unterstutzen.

Auf Grund der modularen Struktur wird das HIDS anschaulichKraken IDSgenannt, wobei dielernfahigen Module in Analogie alsTentakelbezeichnet werden.

Die folgenden Abschnitte beschreiben das Analysekonzept, die Implementierung der einzel-nen Module und die Architektur des Systems. Im Anschluss wird die Leistungsfahigkeit derlernfahigen Module auf realen Daten evaluiert. Das Kapitel schließt mit erstmalig durchgefuhrtenUntersuchungen zur Korrelation von Analysekonzepten in HIDS und der damit verbundenen Lei-stungssteigerung.

3.1 Analysekonzept

Da das zu entwerfende HIDS verschiedene Analysekonzepte in einem System vereinen soll,muss der Entwurf folgende zwei Anforderungen erfullen:

1. Die ausgewahlten Analysekonzepte mussen identische Eingabedaten verarbeiten. Es mussweiterhin moglich sein, den Ausgabewert der Konzepte auf einen Wert zwischen 0 und 1zu wandeln.

2. Das HIDS muss eine allgemeine Schnittstelle zur Verfugung stellen, die es erlaubt, die ver-schiedenen Analysekonzepteuber eine spezifizierte Menge von Funktionen anzusprechen.

35

Page 36: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

Auf Grund dieser Anforderungen werden nur Analysekonzepte vom Typ T1 (stochastische Ana-lyse) und Typ T3 (Approximation) in das System integriert. Beide Typen nutzen ausschließlichNormalverhalten fur die Modellierung der Profile. Die Auswahl wird zudem auf Analysekonzep-te beschrankt, die Programmprofile generieren, da diese in den vorgestellten Forschungsarbeitendie besten Erkennungs- und False-Positive-Raten zeigen.

Die Ein- und Ausgabedaten der Analysekonzepte werden durch Vektoren und Vektorlisten re-prasentiert, die effizient mit der quelloffenen Meschach-Bibliothek [SL94] verarbeitet werdenkonnen. Sofern keine Dimensionen zur Laufzeit bestimmt werden, ist fur alle Analysekonzeptedie Eingabedimension auf 8 und die Ausgabedimension auf 1 gesetzt.

Um eine einheitliche Auswertung der Analysekonzepte zu ermoglichen, wird der Anomaliewertaller Konzepte mit dem Lochrigen-Eimer-Algorithmus aus [GSS99a] verwaltet. Die Große desvirtuellen Eimers kann individuell an das Analysekonzept angepasst werden. Der Grad der Re-duktion des Eimerinhalts eignet sich als Sensitivitatswert.

3.1.1 Modulschnittstelle

Zu jedem Analysekonzept wird ein lernfahiges Modul entwickelt, das die folgende Modulschnitt-stelle implementiert. Die Funktionen der Schnittstelle sind so gewahlt, das sie neben der Anoma-lieerkennung auch zur Korrelation von Anomaliewerten geeignet sind. Maßgeblich sind hierbeidie folgenden drei Funktionen:

– learn(model, inputs, targets)Die Funktionlearn() generiert das Modellmodel aus der Vektorlisteinputs. Fur appro-ximierende Analysekonzepte kann zudem eine Vektorlistetargets ubergeben werden, diedie Zielvektoren enthalt.

– apply(model, input, output)Die Funktionapply() wendet das erlernte Modellmodel auf den Eingabevektorinput anund erzeugt den Ausgabevektoroutput.

– compact(model, output, target, anomaly)Die Funktioncompact() wird nur wahrend der Anomalieerkennung genutzt. Sie wandeltden Vektoroutput der Funktionapply() in einen Anomaliewertanomaly zwischen 0 und1 um. Ein Zielvektortarget kann genutzt werden, falls es sich um ein approximierendesAnalysekonzept handelt.

Fur eine Anomalieerkennung kann so ein Modell durchlearn() generiert unduberapply() undcompact() ein Anomaliewert berechnet werden. Eine Korrelation wirduberlearn() erlernt undmit apply() angewendet.

Die Modulschnittstelle verfugt uber weitere Funktionen fur das Konfigurieren, Lesen, Schreibenund Ausgeben von Modellen. Auf Grund der Große einiger Modelle wie z. B. derN -Grammewird die Z-Kompressionsbibliothek [DG96] f ur Ein- und Ausgabeoperationen genutzt.

36

Page 37: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

3.1.2 Lernf ahige Module

Im Folgenden werden die einzelnen lernfahigen Module des Kraken IDS vorgestellt und Detailsder Implementierung erlautert. Die Module sind jeweils alsDynamic Shared Objects(DSO) rea-lisiert und werden zur Laufzeit dynamisch geladen.

ngram Das Modulngramimplementiert das Analysekonzept derN -Gramme aus [FHSL96].Die gegebenen Vektoreninputs reprasentierenN -Gramme und werden in der Funkti-on learn() genutzt, um einenN -Gramm-Baum zu modellieren. Die Funktionapply()kann so zu dem Vektorinput bestimmen, ob dieser imN -Gramm-Baum enthalten ist.Der Ruckgabewert ist 1, falls der Vektor nicht enthalten ist, und 0, wenn ein passendesN -Gramm gefunden werden kann. Die Funktioncompact() wird nicht genutzt.

str Das Modulstr implementiert das Analysekonzept der String-Transducer aus [MG00].Die Funktionlearn() zerlegt die gegebenen Vektoreninputs in N - und L-Grammeund verwaltet dieN -Gramme in einer Hashtabelle. Die Funktionapply() sucht zudem Vektorinput das entsprechendeN -Gramm sowie den Vektorx und berechnet dieAbweichung vom Modell. Die Funktioncompact() wird nicht genutzt.

ripper Das Modul ripper realisiert eine Schnittstelle zu der externen RIPPER-Applikation [Coh95] und implementiert somit das Analysekonzept aus [LSC97].In der Funktionlearn() werden zu den Vektoreninputs Regeln generiert, die dieeindimensionalen Vektorentargets approximieren konnen. Die Funktionapply()kann so genutzt werden, um aus dem Vektorinput den Folgevektoroutput zuapproximieren. Die Funktioncompact() berechnet aus der Approximation und demtatsachlichen Vektor einen Fehler und gibt diesen als Anomaliewert zuruck.

rnn Das Modulrnn implementiert das Analysekonzept der rekurrenten neuronalen Net-ze aus [Rie03]. In der Funktionlearn() werden Elman-Netze angelernt, um aus denVektoreninputs die Vektorentargets zu approximieren. Es werden jeweils Netze mit10, 15, 20 und 25 versteckten Neuronen trainiert und das Netz mit dem geringstenGesamtfehler ausgewahlt. Zur Vermeidung von Overfitting werden die Gewichte derNetze bei jeder Iteration um eine kleine Konstante reduziert (Weight Decay) [Mit97].Die Funktionapply() wendet das erlernte Netz zur Approximation an. Die Funktioncompact() berechnet dann aus der Approximation und dem tatsachlichen Vektor einenFehler und gibt diesen als Anomaliewert zuruck.

svm Das Modul svm realisiert eine Schnittstelle zu der externen SVMlight-Applikation [Joa99, Joa02], die Support-Vektor-Maschinen implementiert. DieFunktion learn() modelliert eine Regression mit Hilfe von Support-Vektoren, dieaus den Vektoreninputs die Vektorentargets approximiert. Die Funktionapply()nutzt diese erlernten Support-Vektoren zur Approximation. Die Funktioncompact()berechnet einen Fehler aus der Approximation und dem tatsachlichen Vektor und gibtdiesen als Anomaliewert zuruck.

37

Page 38: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

Neben den vorgestellten Modulen wurde auch das Analysekonzept der versteckten Markov-Ketten untersucht. Es zeigte sich, dassahnlich wie in [WFP99] die benotige Rechenzeit weituber fur die Praxis anwendbaren Werten liegt. Bei 50 Zustanden,210 Symbolen und einer Se-quenzlange von 50.000 benotigt der Baum-Welch-Algorithmusuber 2 Minuten pro Iteration aufeinem aktuellen Rechnersystem.

Die in den vorgestellten Modulen integrierten Lernalgorithmen konnen hingegen so konfiguriertwerden, dass alle Iterationen fur eine Sequenzlange von 50.000 in unter 10 Minuten berechnetwerden. Aus diesem Grund werden die versteckten Markov-Ketten in dieser Arbeit nicht weiteruntersucht.

3.1.3 Erweiterungen

Neben der Implementierung der lernfahigen Module sollen auch eigene Erweiterungen in dasAnalysekonzept einfließen, die die Leistungsfahigkeit des HIDS steigern. Im Rahmen dieserArbeit werden daher die Erweiterungen dergespreizten Nummerierungund desvorgeschaltetenKurzzeitspeicherseingefuhrt.

Gespreizte Nummerierung

Das Kraken IDS soll die Systemaufrufe der Betriebssysteme Solaris und Linux unterstutzen.Hierbei sollen sowohl erfolgreiche als auch fehlgeschlagene Systemaufrufe kodiert werden. Ins-gesamt ergibt sich fur die Systemaufrufnummerierung ein Zahlenraum der Große210 = 1024, dasowohl Solaris als auch Linuxuber 255 Systemaufrufe verfugen, die neben den ca. 70 System-aufrufen des POSIX-Standards [POS96] disjunkt sind.

In den vorgestellten Forschungsarbeiten wird die vom Betriebssystem vorgegebene Nummerie-rung der Systemaufrufe verwendet. Diese ist jedoch fur maschinelles Lernen nur bedingt geeig-net, da haufige Systemaufrufe dicht nebeneinander liegen und der verfugbare Zahlenraum nichtvollstandig genutzt wird. Es ist wahrscheinlich, dass benachbarte, haufige Systemaufrufe vonLernalgorithmen alsein Systemaufruf interpretiert und erlernt werden. Ein solche Degenerationkann die Leistungsfahigkeit der Lernalgorithmen schwachen.

Um ein besseres Erlernen der Systemaufrufe zu ermoglichen, wird im Kraken IDS eine Numme-rierung verwendet, die die Systemaufrufeuber den verfugbaren Zahlenraumspreiztund indivi-duell fur jedes zu erlernende Programm erstellt wird.

Hierzu werden die Systemaufrufe nach ihrer Haufigkeit sortiert und anschließenduber den verfug-baren Zahlenraum gespreizt. Der verwendete Algorithmus positioniert den haufigsten System-aufruf in die Mitte des Zahlenraums und verfahrt mit den entstehenden Raumhalften und denbeiden zweithaufigsten Systemaufrufen rekursiv.

38

Page 39: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

1e−06

0,0001

0,01

1

−512 −256 0 256 512

Häu

figk

eit

Systemaufrufnummern

(a) Systemaufrufnummerierung unter Linux

1e−06

0,0001

0,01

1

−512 −256 0 256 512

Häu

figk

eit

Systemaufrufnummern

(b) Gespreizte Systemaufrufnummerierung

Abbildung 3.1: Spreizung der Systemaufrufnummerierung

Abbildung 3.1 (a) zeigt die Haufigkeitsverteilung eines Programms mit der Systemaufrufnum-merierung von Linux. Fehlgeschlagene Systemaufrufe sind durch negative Zahlen kodiert. InAbbildung3.1 (b) ist die gespreizte Nummerierung zu Abbildung3.1 (a) gezeigt. Der Abstandder haufigen Systemaufrufe ist deutlich vergroßert, so dass die beschriebene Degeneration ver-mieden werden kann. Die Haufigkeit ist in beiden Abbildungen auf einer logarithmischen Skaladargestellt.

Vorgeschalteter Kurzzeitspeicher

Die Untersuchungen aus [GMS00] zeigen, dass rekurrente neuronale Netze eine bessere Erken-nungs- und False-Positive-Rate erzielen als azyklische Netze. Die Ruckkoppelungen der rekur-renten Netze bilden einen Kontextspeicher bzw. ein

”Gedachtnis“ und erlauben ein Erlernen von

zeitlich zusammenhangenden Informationen.

Da bis auf die rekurrenten neuronalen Netze keiner der vorgestellten Lernalgorithmenubereinen derartigen Kontextspeicher verfugt, soll im Kraken IDS die Moglichkeit untersucht wer-den, einenKurzzeitspeichervor die Algorithmen zu schalten. Dieser Speicher ist entsprechend[Moz93] ein einfacher Vektor, dessen Inhaltuber den folgenden Algorithmus verwaltet wird:

1. In jedem Schritt werden die Komponenten des Speichervektors durch eine Konstante di-vidiert, so dass der ursprungliche Inhalt im Laufe der Zeit exponentiell reduziert bzw.

”vergessen“ wird.

2. Zudem wird in jedem Schritt der aktuelle Eingabevektor auf den Speichervektor addiert,so dass aktuelle Informationen eine hohere Gewichtung erfahren als zuruckliegende.

39

Page 40: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

Die Funktionsweise dieses Kurzzeitspeichers kann verdeutlicht werden, wenn fur die Divisions-konstante der Wert 10 gewahlt wird. Tabelle3.1 zeigt ein Beispiel fur einen eindimensionalenKurzzeitspeicher.

Zeitpunkt 1 2 3 4 5

Eingabewert 5 1 4 1 3

Kurzzeitspeicher 5,0000 1,5000 4,1500 1,4150 3,1415

Tabelle 3.1: Beispiel fur einen Kurzzeitspeicher

In der Praxis hangt die Kapazitat dieses Kurzzeitspeichers von der Bitgroße der verwendetenGleitkommazahlen ab. Im Kraken IDS werden Gleitkommazahlen mit doppelter Genauigkeitentsprechend des IEEE-Standards 754 verwendet [IEE85]. Die Mantisse dieser Zahlen ist 52Bit breit, so dass bis zu funf 10-Bit-Zahlen gespeichert werden konnen. Da der Zahlenraum derSystemaufrufe210 groß ist, konnen so bis zu funf Systemaufrufe durch den Kurzzeitspeicher er-innert werden.

Obwohl nach [Moz93] ein solcher Kurzzeitspeicher nicht die Leistungsfahigkeit des Kontextspei-chers in rekurrenten neuronalen Netzen erreicht, ist anzunehmen, dass er die Leistungsfahigkeiteiniger Lernalgorithmen steigert.

3.2 Architektur

Im Anschluss an den Entwurf des Analysekonzepts soll nun die Implementierung der einzelnenKomponenten des Kraken IDS und damit dessen Architektur vorgestellt werden.

Das System ist als verteiltes IDS konzipiert. Die einzelnen AufgabengebieteDatenerhebung,Datenfilterung, Profilierung und Anomalieerkennungsind in einzelne Komponenten gekapselt,die auf getrennten Rechnersystemen betrieben werden konnen. Die Kommunikation zwischendiesen Komponenten erfolgt in der aktuellen Version des Systemsuber einfache Dateien oderUnix-Pipes. Hierzu werden eigene Formate verwendet, die die Byte-Ordnung (Endianess) ver-schiedener Hardwareplattformen berucksichtigen. Eine Integration von Sicherheitsmechanismenwie Verschlusselung und Authentifikation ist fur spatere Versionen des Kraken IDS geplant.

Um Betriebssystemunabhangigkeit zu ermoglichen, nutzt das Kraken IDS ausschließlich Sy-stemaufrufe des POSIX-Standards [POS96]. Die einzelnen Komponenten konnen so auf ver-schiedenen POSIX-konformen Betriebssystemen wie Solaris, Linux oder OpenBSD operieren.Eine bessere Skalierbarkeit wird durch den Einsatz von POSIX-Threads gewahrleistet.

Das Kraken IDS ist vollstandig in der betriebssystemnahen Programmiersprache C realisiert. DieQuellen des Systems und der lernfahigen Module umfassen ca. 18.000 Zeilen Code.

40

Page 41: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

3.2.1 Komponenten

Im Folgenden werden die einzelnen Komponenten des Kraken IDS vorgestellt. Abbildung3.2stellt diese sowie deren Zusammenspiel in einerUbersicht dar.

Datenerhebungunter Linux

Datenerhebungunter Solaris

über lernfähige ModuleProfilierung

über lernfähige ModuleAnomalieerkennung

Datenfilterung

Legende

Kraken IDS KomponenteDaten

Solaris BSM Komponentebetriebssystemabhängig

krprofile

krextract krdetect

krcorrelateauditd

krauditd

Korrelation derAnomaliewerte

Programm−profile

datenAudit−

werteAnomalie−

IDMEF−Nachrichten

Abbildung 3.2: Komponenten des Kraken IDS

Datenerhebung

Das Kraken IDS unterstutzt als Datenquellen die Betriebssysteme Linux und Solaris, da beideSysteme entsprechend der internationalen Common Criteria [CC99] Betriebssystemaudit ermog-lichen.

Fur die Datenerhebung unter Linux wird im Systemkern eine modifizierte Version desSecureAuditing for Linux(SAL) Systems [WG03] eingesetzt. Im Benutzerraum wird die Komponentekrauditd verwendet, die die Auditdaten aus dem Kern bezieht und nebenlaufig in das Kraken-Auditformat (KRA) uberfuhrt. Die teilweise sehr umfangreichen Auditdaten werden vor derSpeicherung mit Hilfe der Z-Kompressionsbibliothek [DG96] auf unter 10% ihrer originalenGroße komprimiert.

Unter Solaris wird sowohl im Systemkern als auch im Benutzerraum dasBasic Security Mo-dule (BSM) [BSM00] von Sun Microsystems benutzt, das Auditdaten erhebt und im BSM-Auditformat speichert.

41

Page 42: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

Datenfilterung

Die Komponentekrextractfiltert und extrahiert aus Daten im Kraken- oder BSM-AuditformatSystemaufrufsequenzen unduberfuhrt diese in das Kraken-Trace-Format (KRT). Hierzu werdendie Systemaufrufe von jedem aufgezeichneten Prozess analysiert. Start- und Stopppunkt einerSystemaufrufsequenz werden wie folgt identifiziert:

– Startpunkt:execve() oderfork()Programmverhalten beginnt entweder mit dem Ausfuhren eines Programms,execve() ,oder durch das Erzeugen eines Kindprozesses,fork() .

– Stopppunkt:exit()Da alle Prozesseuber den Systemaufrufexit() terminiert werden, endet auch Pro-grammverhalten mit diesem.

Die im vorangegangenen Kapitel vorgestellten Forschungsarbeiten beschranken sich auf die Sy-stemaufrufeexecve() und exit() , daher werden in diesen Kindprozesse nicht analysiertund viele mogliche Angriffe nicht erkannt.

Profilierung

Die Komponentekrprofile dient der Generierung von Programmprofilen. Sie ladt zur Laufzeitdie verfugbaren lernfahigen Module und nutzt die darin integrierten Analysekonzepte, um ausgegebenen Systemaufrufsequenzen Programmprofile zu modellieren. Die Module arbeiten hier-bei nebenlaufig, um eine bessere Skalierbarkeit zu gewahrleisten. Die erstellen Programmprofilewerden anschließend im Kraken-Profilformat (KRP) gespeichert.

Anomalieerkennung

Die Komponentekrdetectrealisiert die Anomalieerkennung. Die Analyse erfolgt in einem vonzwei Modi:

1. Stand-Alone-ModusIn diesem Modus wird eine gegebene Systemaufrufsequenz mit allen verfugbaren lernfa-higen Modulen und den entsprechenden Programmprofilen analysiert. Kann eine Anoma-lie identifiziert werden, so gibt die Komponenteuber die IDMEF-Bibliothek [IDM] eineWarnnachricht aus.

2. KorrelationsmodusIm Korrelationsmodus wird die gegebene Systemaufrufsequenz kontinuierlich analysiertund aktuelle Anomaliewerte ausgegeben. Die Anomaliewerte dienen als Eingabe fur dieKorrelationskomponente, in der eine Korrelation der Werte erfolgt.

Die lernfahigen Module werden in dieser Komponente nicht unabhangig betrieben, sondern ope-rieren synchron, so dass zu jeder Position der Systemaufrufsequenz zeitnah die Anomaliewertealler Module verfugbar sind.

42

Page 43: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

Korrelation

Die Komponentekrcorrelate integriert verschiedene Algorithmen zur Korrelation von Anoma-liewerten. Da es sich hierbei um ein neues Konzept handelt, wird die Korrelation separat inAbschnitt3.4 vorgestellt und diskutiert. Kann eine Anomalieuber die Korrelation identifiziertwerden, so wird auch von der Komponentekrcorrelateeine IDMEF-Nachricht erzeugt.

Da die Warnnachrichten sowohl in der Komponentekrdetectals auch inkrcorrelateim IDMEF-Format generiert werden, kann das Kraken IDS leicht in existierende IDS wie Prelude IDS [Zar03]oder M-ICE [Bie02], integriert werden. Abbildung3.3zeigt eine IDMEF-Nachricht des KrakenIDS im XML-Format.

<IDMEF-Message version="1.0"><Alert ident="0">

<Analyzer analyzerid="Tentacle Recurrent Neural Network (Kraken IDS)"manufacturer="Konrad Rieck ([email protected])" version="0.12">

<Node><Address category="ipv4-addr">

<address>10.0.0.5</address></Address>

</Node></Analyzer><CreateTime>2004-02-04T18:51:32Z</CreateTime><DetectTime>2004-02-04T18:50:21Z</DetectTime><Source>

<Node><Address category="ipv4-net">

<address>10.0.0.3</address></Address>

</Node><User category="os-device">

<UserId type="current-user"><name>rieck</name><number>1000</number>

</UserId><UserId type="user-privs">

<name>root</name><number>0</number>

</UserId></User><Process>

<name>smbd</name><pid>3123</pid><path>/usr/sbin</path>

</Process></Source><Classification origin="vendor-specific">

<name>Syscall Anomaly</name><url>http://www.kraken-ids.org</url>

</Classification></Alert>

</IDMEF-Message>

Abbildung 3.3: IDMEF-Nachricht einer Anomalie im Programmsmbd

43

Page 44: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

3.3 Evaluation

Nach der Diskussion der Analysekonzepte und der Architektur des Kraken IDS soll nun dessentatsachliche Leistungsfahigkeit untersucht werden. Zu diesem Zweck werden die lernfahigenModule in einerVor- undHauptevaluationmit Auditdaten angelernt und zur Anomalieerkennungeingesetzt.

– VorevaluationIn der Vorevaluation werden die lernfahigen Module auf den kunstlichen Evaluationsdatender DARPA [LC+00] untersucht. Da in einigen der ursprunglichen Forschungsarbeitendiese Daten Verwendung finden, kann so im direkten Vergleich verifiziert werden, dass dieAnalysekonzepte in den Modulen korrekt implementiert sind.

– HauptevaluationIn der anschließenden Hauptevaluation werden die Module auf umfangreichen Evaluati-onsdaten angelernt und untersucht. Die Daten entstammen realen Linux-Rechnersystemen,so dass die bei dieser Untersuchung erzielten Ergebnisse den direkten Ruckschluss auf dieLeistungsfahigkeit des HIDS in der Praxis ermoglichen.

3.3.1 Vorevaluation

Fur die Vorevaluation werden die kunstlichen Evaluationsdaten der DARPA verwendet, die zurAnalyse von HIDS Auditdaten eines Solaris-Rechnersystems enthalten. Die Aufzeichnungenumfassen einen Zeitraum von 14 Wochen, der in zehnwochige Trainingsdaten und vierwochigeTestdaten partitioniert ist.

Datenquelle

Aus den Trainingsdaten werden fur die Untersuchung die Systemaufrufsequenzen von 46 aus-gewahlten Programmen extrahiert und zum Anlernen der lernfahigen Module genutzt.

Die Auswahl orientiert sich hierbei an typischen Sicherheitsschwachstellen und beinhaltet nursolche Programm, die mindestens eine der folgenden Bedingungen erfullen:

– Das Programm erweitert die Privilegien des Nutzers zur Laufzeit, z.B. durch das SetUID-Bit, und ist somit ein potentielles Ziel fur Angriffe. (Beispiel:eject )

– Das Programm verarbeitet Netzwerkdaten, so dassRemote-to-Local-Angriffe moglich sei-en konnten. (Beispielin.telnetd )

– Das Programm war aus verschiedenen Grunden in der Vergangenheit mehrfach Ziel vonAngriffen. (Beispiel:sendmail )

– Das Programm ist Teil einer komplexen Desktopumgebung, so dass die Wahrscheinlichkeitfur mogliche Schwachstellen erhoht ist. (Beispiel:ttsession )

44

Page 45: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

Die vollstandige Auswahl der Programme ist in Tabelle3.2 aufgefuhrt. Nicht jedes dieser Pro-gramme wird im Zeitraum der Testdaten ausgefuhrt, so dass sich die Untersuchung auf 37 Pro-gramme beschrankt. Die nicht enthaltenen Programme sind in Tabelle3.2jeweils mit∗ markiert.

arp ∗ in.fingerd mail sendmail uudemon.poll

audit in.ftpd mail.local su uusched

cron ∗ in.rlogind mailx talk ∗ uustat

crontab in.telnetd netstat telnet volcheck

eject in.uucpd nslookup ∗ top write ∗

fdformat login olwm ttsession xinit

ffbconfig ∗ lpq ∗ pine ∗ ufsdump

finger lpr ping ufsrestore ∗

ftp lpstat rlogin uucleanup

in.comsat lynx rpc.rusersd uudemon.admin

Tabelle 3.2: Ausgewahlte Programme der Vorevaluation

Neben Auditdaten von Normalverhalten enthalten die Evaluationsdaten der DARPA auch Auf-zeichnungen von Angriffen verschiedener Angriffstypen. Tabelle3.3 zeigt die zur Evaluationvon HIDS vorgesehenen Angriffe. Fur jeden dieser Angriffe liegen bis zu 16 verschiedene Auf-zeichnungen vor, die den Angriff in unterschiedlichen Szenarien dokumentieren [Ken99].

Angriffsziel Programmbeschreibung Angriffstyp CVE-Nummer Exploit

ffbconfig Grafikkonfiguration User-to-Root CVE-1999-0109 [Sch97c]

eject Auswurf von Medien User-to-Root CVE-1999-0315 [Sch97a]

fdformat Diskettenformatierung User-to-Root CVE-1999-0315 [Sch97b]

Tabelle 3.3: Angriffe der DARPA-Evaluationsdaten

Untersuchung

Fur die Vorevaluation werden die lernfahigen Modulengram, str, ripper, rnn und svmmit Sy-stemaufrufsequenzen von Normalverhalten der ausgewahlten Programme angelernt. Alle Angrif-fe sind fur die Module unbekannt.

45

Page 46: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

Die generierten Programmprofile werden anschließend genutzt, um in den Testdaten und den auf-gezeichneten Angriffen Anomalien zu erkennen. Die Sensitivitat der lernfahigen Module wirdwahrend der Untersuchung so konfiguriert, dass sich fur jedes Modul eine maximale Erken-nungsrate ergibt. Abbildung3.4zeigt den Ablauf der Evaluation.

über lernfähige ModuleAnomalieerkennung

über lernfähige ModuleProfilierung

krprofile

Legende

Kraken IDS KomponenteDaten

Kraken IDS Modulstr ripperngram rnn svm

krdetect

datenTrainings−

profileProgramm−

datenTest−

NachrichtenIDMEF−

Abbildung 3.4: Ablauf der Vorevaluation

Ergebnisse

Alle Module erzielen auf den Evaluationsdaten eine Erkennungsrate von 100%, so dass die False-Positive-Rate das entscheidende Kriterium der Vorevaluation ist. Tabelle3.4 stellt die erzieltenErkennungs- und False-Positive-Raten der verschiedenen Module gegenuber.

Modul Analysekonzept Erkennungsrate False-Positive-Rate

ngram N -Gramme 1,0 0,0128

str String-Transducer 1,0 0,0128

ripper RIPPER-Algorithmus 1,0 0,0107

rnn Rekurrente neuronale Netze 1,0 0,0000

svm Support-Vektor-Maschinen 1,0 0,0214

Tabelle 3.4: Erkennungs- und False-Positive-Raten der Vorevaluation

Die Analysekonzepte der stochastischen Lernalgorithmen erzielen eine False-Positive-Rate vonP (nfp) = 0, 0128, die geringfugig besser als in der Forschungsarbeit [MG00] ausfallt. Die Mo-dule sind daher korrekt implementiert.

46

Page 47: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

Das Analysekonzept des RIPPER-Algorithmus erreicht eine False-Positive-Rate vonP (nfp) =0, 0107, die deutlich schlechter als in [WFP99] ausfallt. In [WFP99] werden allerdings nur achtProgramme der DARPA-Evaluationsdaten betrachtet, so dass dieser Unterschied vernachlassigtwerden kann, zumal das Analysekonzept des RIPPER-Algorithmus bessere Ergebnisse als diestochastischen Lernalgorithmen zeigt.

Die rekurrenten neuronalen Netze erzielen eine perfekte Anomalieerkennung mit einer False-Positive-Rate vonP (nfp) = 0. Das entsprechende Modul ist daher zwangslaufig korrekt im-plementiert. Die in [Rie03] angegebene False-Positive-Rate vonP (nfp) = 0, 054 lasst sich mitdieser Untersuchung nicht vergleichen, da sie auf realen Evaluationsdaten erzielt wurde.

Fur das Analysekonzept der Support-Vektor-Maschinen liegen keine entsprechenden Forschungs-ergebnisse vor. Es ist daher kein direkter Vergleich moglich. Die False-Positive-Rate vonP (nfp) =0, 0214 liegt nur leichtuber den Raten der anderen Module.

Da alle Analysekonzepte entsprechend der vorgestellten Forschungsarbeiten implementiert wur-den, kann angenommen werden, dass vor allem die Erweiterung der gespreizten Nummerierungsowie die Kodierung von fehlgeschlagenen Systemaufrufen die Erkennungsrate auf 1,0 steigert.

3.3.2 Hauptevaluation

In der folgenden Untersuchung soll die tatsachliche Leistungsfahigkeit des Kraken IDS ermit-telt werden. Maßgeblich fur die Qualitat einer solchen Evaluation sind die zu Grunde liegendeEvaluationsdaten.

– Kunstliche Evaluationsdaten sind leicht in beliebiger Menge und Konfiguration zu erhe-ben, da sie in einer isolierten Umgebung ohne Einfluss auf reale Systeme oder den Daten-schutz generiert werden konnen. Sie erlauben jedoch keinen verlasslichen Ruckschluss aufdie Leistungsfahigkeit unter realen Bedingungen [MHL+03].

– Reale Evaluationsdaten sind schwieriger zu erheben. Personenbezogene Informationenmussen entsprechend des Datenschutzes anonymisiert werden. Sicherheitsmaßnahmen sindnotwendig, um zum einen Angriffe ohne Einfluss auf die betroffenen Rechnersysteme auf-zuzeichnen und zum anderen um die Wahrscheinlichkeit fur unwissentlich aufgezeichneteAngriffe von außen zu minimieren [Rie03b, Rie03a].

Datenquelle

Fur diese Untersuchung wurden insgesamtneunLinux-Rechnersystemeuber einen Zeitraum vonacht Wochenuberwacht. Sechs dieser Systeme wurden vom Institut fur Informatik der FreienUniversitat Berlin zur Verfugung gestellt und sind mit der Linux-Distribution Debian 3.0 [DEB]ausgestattet. Die weiteren drei Systeme stellte das Studentische Projekt Linux Netzwerk derFreien Universitat Berlin zur Verfugung. Auf diesen Systemen wurden die Linux-DistributionenSuSE 8.3 und 9.0 [SUS] betrieben.

47

Page 48: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

Alle Systeme wurden wahrend der acht Wochen von Studenten der Informatik und Bioinforma-tik aktiv genutzt. Zur Gewahrleistung des Datenschutzes wurde die zur Datenerhebung einge-setzte Komponente des Kraken IDS um eine Anonymisierungsfunktion entsprechend Bundes-datenschutzgesetz§ 3 Abs. 6 [MW00] erweitert. Der vollstandige Vorgang der Datenerhebung,Anonymisierung und Weiterverarbeitung wird in der Arbeit [Rie03a] vorgestellt, die dem Rech-nerbetrieb, der Datenschutzbeauftragten der Freien Universitat Berlin sowie den Studenten alsReferenz diente.

Insgesamt wurden fur die Hauptevaluation 13 Gigabyte komprimierte bzw. 590 Gigabyte unkom-primierte Auditdaten erhoben und in vierwochige Trainingsdaten sowie zweiwochige Testdatenpartitioniert. Es verbleiben die Auditdaten von zwei weiteren Wochen zur Analyse der Korrela-tion in Abschnitt3.4.

Aus den Trainingsdaten werden fur die Hauptevaluation die Systemaufrufsequenzen von 58 aus-gewahlten Programmen extrahiert. Die Auswahl erfolgt hierbei nach den bereits vorgestelltenKriterien der Vorevaluation. Auf Grund der sehr umfangreichen Evaluationsdaten werden vonjedem Programm maximal 50 Systemaufrufsequenzen analysiert, da sonst z. B. stundlich aus-gefuhrte Programme die Ergebnisse dominieren und verfalschen wurden.

acroread htpasswd ∗ ksmserver mail ping wget

as identd ld man rsync xauth

automount ifconfig links mandb screen ∗ xedit ∗

cron in.rlogind ∗ logger mc sftp-server xhost

crontab inetd login mysql ∗ ssh xrdb

esd insmod lpc nc sshd xset

fetchmail kdesktop ∗ lpd netstat tcpd ypcat ∗

finger kdm_config lpq ntpd telnet-ssl ytalk

gpg killall lpr ntpdate top

host kshell lynx pine umount

Tabelle 3.5: Ausgewahlte Programme der Hauptevaluation

Die ausgewahlten Programme sind in Tabelle3.5aufgefuhrt. Wie auch bei den Daten der DAR-PA liegen nicht fur jedes ausgewahlte Programm Systemaufrufsequenzen in den Testdaten vor,so dass sich die Hauptevaluation auf die Untersuchung von verbleibenden 51 Programmen be-schrankt. Die nicht enthaltenen Programme sind in Tabelle3.5 jeweils mit∗ markiert.

Zusatzlich zur Erhebung von realen Auditdaten wurden funf verschiedene Angriffe der Angriffs-typenUser-to-Rootund Remote-to-Localausgewahlt und auf einem isolierten System mit ent-

48

Page 49: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

sprechenden Schwachstellen untersucht. Die Angriffe sind in Tabelle3.6 dargestellt. Fur jedenAngriff wurden verschiedene Szenarien erstellt und aufgezeichnet, die jeweils unterschiedlicheAktionen umfassen, wie z. B. die Manipulation von Konfigurationsdateien oder die Installationeines Netzwerksniffers. Insgesamt wurden so 86 Angriffsszenarien aufgezeichnet.

Angriffsziel Programmbeschreibung Angriffstyp CVE-Nummer Exploit

rmserver Real-Medien-Server Remote-to-Local CAN-2003-0725 [Cyb03]

pine Mailprogramm Remote-to-Local CAN-2003-0720 [Sor03]

samba Netzwerkdateisystem Remote-to-Local CAN-2003-0201 [Cow03]

unace Archivdekompressor Local-to-Root nicht erfasst [Cok03]

as Assembler Local-to-Root nicht erfasst [Dem03]

Tabelle 3.6: Angriffe der Hauptevaluation

Es werden auch Angriffe gegen die Programmenunace undas untersucht, obwohl diese keinePrivilegienerweiterung zur Laufzeit erlauben. Es handelt sich hierbei um theoretische Angriffe,die jedoch auf Systemaufrufebene wie praktische Angriffe wahrgenommen werden.

Angriffe der TypenDenial-of-Servicesowie Probeswerden nicht untersucht, da diese nichtzwangslaufig von HIDS erfasst werden und somit die lernfahigen Module nicht erreichen konnen.

Untersuchung

Zur Untersuchung werden die lernfahigen Modulengram, str, ripper, rnn undsvmdes KrakenIDS mit dem Normalverhalten der ausgewahlten Programme angelernt. Die Angriffe sind auchhier fur die einzelnen Module unbekannt. Um die Wirkung des vorgeschalteten Kurzzeitspei-chers zu untersuchen, wird fur jedes ausgewahlte Programm jeweils ein Profil mit und ohnevorgeschalteten Kurzzeitspeicher generiert.

Im Anschluss an das Anlernen werden die Module zur Anomalieerkennung auf den Testdatenund den aufgezeichneten Angriffen eingesetzt. Die Sensitivitat der lernfahigen Module wirdwahrend der Untersuchung so konfiguriert, dass sich eine maximale Erkennungsrate ergibt.

Ergebnisse

Auch auf den realen Evaluationsdaten erkennen die lernfahigen Module des Kraken IDS alleaufgezeichneten 86 Angriffsszenarien, so dass sich fur jedes Modul eine Erkennungsrate vonP (ntp) = 1, 0 ergibt. Die False-Positive-Raten fallen im Vergleich zur Vorevaluation schlechteraus, da die realen Evaluationsdaten ein großeres, schwieriger zu modellierendes Spektrum anProgrammverhalten aufweisen.

49

Page 50: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

Die Erkennungs- und False-Positive-Raten der einzelnen Module sind in Tabelle3.7aufgefuhrt.

Modul Analysekonzept Erkennungsrate False-Positive-Rate

ngram N -Gramme 1,0 0,0643

str String-Transducer 1,0 0,0588

ripper RIPPER-Algorithmus 1,0 0,0554

rnn Rekurrente neuronale Netze 1,0 0,0363

svm Support-Vektor-Maschinen 1,0 0,1657

Tabelle 3.7: Erkennungs- und False-Positive-Raten der Hauptevaluation

Die stochastischen Analysekonzepte derN -Gramme und der String-Transducer sowie das regel-basierte Konzept des RIPPER-Algorithmus zeigen eine False-Positive-Rate zwischen 0,0554 und0,0643. Die entsprechenden Module erreichen somit auf realen Evaluationsdaten eineahnlicheLeistungsfahigkeit wie das in [Rie03] vorgestellte HIDS.

Die rekurrenten neuronalen Netze erzielen in der Hauptevaluation die beste False-Positive-Ratemit P (nfp) = 0, 0363. Da das entsprechende Modul auf dem Analysekonzept von [Rie03] auf-baut und dessen False-Positive-Rate vonP (nfp) = 0, 054 deutlich verbessert, kann angenommenwerden, dass die Erweiterung der gespreizten Nummerierung, die Kodierung von fehlgeschlage-nen Systemaufrufen sowie die Reduktion der Gewichte (Weight Decay) Grund der Steigerungsind.

Die Support-Vektor-Maschinen erreichen eine False-Positive-Rate vonP (nfp) = 0, 1657 undkonnen nicht an die Leistungsfahigkeit der anderen Module anschließen. Es ist anzunehmen,dass das Modell der Support-Vektor-Maschinen nicht zur Approximation bzw. Regression vonSystemaufrufsequenzen geeignet ist und daher die schwierige Aufgabe der Analyse von Pro-grammverhalten nicht zufrieden stellend lost. Support-Vektor-Maschinen werden in der Literaturhauptsachlich zur Klassifikation genutzt [Bur98, Joa99, DHS00].

Abbildung 3.5 zeigt die ROC-Graphen und Operationsbereiche der einzelnen lernfahigen Mo-dule. Das Analysekonzept der Support-Vektor-Maschinen ist auf Grund der schlechten False-Positive-Rate, dieuber 0,1 liegt, nicht aufgefuhrt. Die Operationsbereiche visualisieren fur jedesAnalysekonzept den Bereich der Sensitivitat, in dem die Erkennungsrateuber 0,9 und die False-Positive-Rate unter 0,1 liegt.

Wahrend der Untersuchung wurde beobachtet, dass die Konfiguration der rekurrenten neuronalenNetze gegenuber den anderen Analysekonzepten schwieriger ausfallt. Diese Beobachtung kanndurch den im Vergleich kleineren Operationsbereich des Analysekonzepts erklart werden, der inAbbildung3.5ersichtlich ist.

50

Page 51: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

0

0,2

0,4

0,6

0,8

1

0 0,02 0,04 0,06 0,08 0,1

Erk

ennu

ngsr

ate

False−Positive−Rate

N−GrammeN−Gramme (KZS)

0

0,2

0,4

0,6

0,8

1

0 0,2 0,4 0,6 0,8 1

Erk

ennu

ngs−

und

Fal

se−P

ositi

ve−R

ate

Sensitivität

ErkennungsrateFalse−Positive−Rate

Operationsbereich

(a) Analysekonzept derN -Gramme

0

0,2

0,4

0,6

0,8

1

0 0,02 0,04 0,06 0,08 0,1

Erk

ennu

ngsr

ate

False−Positive−Rate

String−TransducerString−Transducer (KZS)

0

0,2

0,4

0,6

0,8

1

0 0,2 0,4 0,6 0,8 1

Erk

ennu

ngs−

und

Fal

se−P

ositi

ve−R

ate

Sensitivität

ErkennungsrateFalse−Positive−Rate

Operationsbereich

(b) Analysekonzept der String-Transducer

0

0,2

0,4

0,6

0,8

1

0 0,02 0,04 0,06 0,08 0,1

Erk

ennu

ngsr

ate

False−Positive−Rate

RIPPER−AlgorithmusRIPPER−Algorithmus (KZS)

0

0,2

0,4

0,6

0,8

1

0 0,2 0,4 0,6 0,8 1

Erk

ennu

ngs−

und

Fal

se−P

ositi

ve−R

ate

Sensitivität

ErkennungsrateFalse−Positive−Rate

Operationsbereich

(c) Analysekonzept des RIPPER-Algorithmus

0

0,2

0,4

0,6

0,8

1

0 0,02 0,04 0,06 0,08 0,1

Erk

ennu

ngsr

ate

False−Positive−Rate

rekurrente neuronale Netze

0

0,2

0,4

0,6

0,8

1

0 0,2 0,4 0,6 0,8 1

Erk

ennu

ngs−

und

Fal

se−P

ositi

ve−R

ate

Sensitivität

ErkennungsrateFalse−Positive−RateOperationsbereich

(d) Analysekonzept der rekurrenten neuronalen Netze

Abbildung 3.5: ROC-Graphen und Operationsbereiche des Kraken IDS

51

Page 52: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

Neben den bereits beschriebenen Ergebnissen sind in Abbildung3.5 auch die Untersuchungenaufgefuhrt, bei denen ein Kurzzeitspeicher (KZS) vorgeschaltet wurde. Es ist zu erkennen, dassin keinem Fall der Kurzzeitspeicher die Leistungsfahigkeit der Module steigert. Vor allem dasAnalysekonzept des RIPPER-Algorithmus ist nicht in der Lageuber Regeln, die durch den Kurz-zeitspeicher erweiterten Eingabevektoren zu approximieren.

Der Grund hierfur liegt in der Tatsache, dass nur der Eingabevektor und nicht ein spezifischerinnerer Zustand wie im Fall der rekurrenten neuronalen Netze wahrend der Analyse gespeichertund verarbeitet wird. Der Kurzzeitspeicher ist daher nicht zur Leistungssteigerung von maschi-nellem Lernen in HIDS geeignet.

52

Page 53: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

3.4 Korrelation

Die lernfahigen Module des Kraken IDS verarbeiten die zu analysierenden Systemaufrufsequen-zen synchron. Wahrend jedes Schritts der Analyse stehen die aktuellen Ausgabewerte aller Mo-dule zur Verfugung.

Diese Eigenschaft des Kraken IDS motiviert die drei folgenden Fragestellungen, die bisher inkeiner Forschungsarbeit zu maschinellem Lernen in HIDS betrachtet wurden.

1. Inwieweit ist es moglich, die Ausgabewerte einzelner Analysekonzepte zu einem Gesamt-anomaliewert zu korrelieren?

2. Welche Algorithmen des maschinellen Lernens und welche Formatierung der Ausgabe-werte eignen sich fur eine derartige Korrelation?

3. Kann eine Korrelation die Leistungsfahigkeit des HIDS steigern, so dass die Erkennungs-und False-Positive-Rate des Systems besser als die Raten der einzelnen Module ausfallen?

Im folgenden Abschnitt werden daher dieFormatierungder Ausgabewerte, verschiedeneAlgo-rithmenzur Korrelation und die erzieltenErgebnissevorgestellt und diskutiert.

3.4.1 Formatierung zur Korrelation

Es bietet sich an, die Ausgabewerte in einem Vektorx anzuordnen, wobei die Komponentexi

die Ausgabe desi-ten lernfahigen Moduls reprasentiert. Zusatzlich werden die Ausgabewerte aufdas Intervall zwischen 0 fur Normalverhalten und 1 fur Angriffe beschrankt.

Betrachtet man die Daten der Hauptevaluation so entstehen zwei Klassen 0 und 1, die jeweilsVektoren von Normalverhalten bzw. von Angriffen enthalten. Abbildung3.6 zeigt diese zweiKlassen am Beispiel der Modulestr, ripper undrnn.

Vektorliste derAusgabewerte der

Module

0, 0

0, 3

0, 0

. . .

0, 2

1, 0

0, 0

︸ ︷︷ ︸

1, 0

1, 0

1, 0

. . .

0, 9

1, 0

1, 0

︸ ︷︷ ︸

x1= str

x2= ripper

x3= rnn

Klasse 0 (Normalverhalten) Klasse 1 (Angriffe)

Abbildung 3.6: Formatierung der Ausgabewerte der lernfahigen Module

Eine Korrelation kann nun alsKlassifikationrealisiert werden. Ein Lernalgorithmus muss hierzueine Hypothese erstellen, die die Vektoren korrekt als normal oder anomal klassifiziert.

53

Page 54: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

3.4.2 Korrelationsalgorithmen

Es existieren viele Algorithmen aus dem Bereich des maschinellen Lernens, die Hypothesen fureine Klassifikation erlernen konnen. In dieser Arbeit werden vier Lernalgorithmen untersucht,die sehr effizient realisiert werden konnen und somit den Vorgang der Anomalieerkennung kaumverzogern.

1. RIPPER-AlgorithmusDer RIPPER-Algorithmus wird in Unterabschnitt1.2.1vorgestellt. Er wird erfolgreich inder Hauptevaluation zur Approximation von Systemaufrufsequenzen genutzt und soll indieser Untersuchung zur Klassifikation eingesetzt werden.

2. Support-Vektor-MaschinenDie Support-Vektor-Maschinen werden in Unterabschnitt1.2.4eingefuhrt. In der Haupte-valuation erzielen sie keine zufrieden stellenden Ergebnisse bei der Approximation vonSystemaufrufsequenzen. Es soll daher die Leistungsfahigkeit der Klassifikation analysiertwerden.

3. Lineare Fisher-DiskriminanteDer Algorithmus der linearen Fisher-Diskriminante berechnet zu den Vektoren zweierKlassen eine Projektionsgerade, die so gewahlt ist, dass der Abstand der Mittelwerte derprojizierten Klassen maximal und die Varianz innerhalb der projizierten Klassen minimalist [DHS00].

Ein Vektor kann durch die Projektion in einen eindimensionalen Raumuberfuhrt undschließlichuber einen Schwellwert auf der Projektionsgeraden klassifiziert werden.

4. Gewichtete MehrheitDer Algorithmus der gewichteten Mehrheit (Weighted Majority Algorithm) bestimmt furjede Dimension der gegebenen Vektoren ein Gewicht. Die Gewichte werden zu Beginnauf einen festen Wert gesetzt. Anschließend wird fur jeden Vektor gepruft, inwieweit seineKomponenten mit der zugehorigen Klasseubereinstimmen. Liegt der Betrag der Differenzzwischen Komponente und Klassennummeruber 0,5, so wird das Gewicht dieser Kompo-nente reduziert [LW89].

Um einen Vektor zu klassifizieren, werden dessen Komponenten mit den erlernten Ge-wichten multipliziert. Liegt die Mehrheit der Komponenten unter 0,5, wird der Vektor mitder Klasse 0 und andernfalls mit der Klasse 1 assoziiert.

Diese Korrelationsalgorithmen werden als lernfahige Module des Kraken IDS realisiert und im-plementieren die Funktionenlearn() fur das Erlernen undapply() fur das Anwenden der Klassi-fikation. Das Modul zur linearen Fisher-Diskriminante wirdlfd und das zur gewichteten Mehrheitwmbenannt.

54

Page 55: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

3.4.3 Untersuchung

Fur die Untersuchung der Korrelationsalgorithmen werden die Modulestr, ripper und rnn zurAnomalieerkennung ausgewahlt, da sie zum einen die besten Ergebnisse in der Hauptevaluationerzielen und zum anderen jeweils stochastische, regelbasierte und neuronale Profile modellieren.

Die Module werdenuber die Komponentekrdetectauf den Testdaten der Hauptevaluation ange-wendet. Es entsteht zu jedem der 51 Programme eine Menge von Vektoren, die aus den Ausga-bewerten gebildet werden und Normalverhalten reprasentieren. Zusatzlich werden die Mengendurch hypothetische Vektoren von Angriffen erganzt, bei denen alle Komponenten auf 1 gesetztsind.

Fur jedes Programm kann nun eine Klassifikation der Vektorenuber die Moduleripper, svm, lfdundwmerlernt und das entstehende Modell alsKorrelationsprofilgespeichert werden.

Die Qualitat der Korrelation wird im Anschluss auf den zweiwochigen Testdaten untersucht, diespeziell fur diese Untersuchung erhoben wurden. Der vollstandige Ablauf der Untersuchung istin Abbildung3.7schematisch dargestellt.

Korrelationüber lernfähige Module

str rnn ripper svm lfd wm

krdetect krcorrelate

Legende

Kraken IDS KomponenteDaten

Kraken IDS Modul

NachrichtenIDMEF−

profile

werteAnomalie−

datenTest−

profileProgramm−

Korr.−

Abbildung 3.7: Ablauf der Untersuchung zur Korrelation

3.4.4 Ergebnisse

Jeder der vier Algorithmen korreliert die Ausgabewerte mit gutem Ergebnis, so dass die False-Positive-Rate reduziert wird und die Erkennungsrate bei 100% verbleibt. Die jeweiligen Erken-nungs- und False-Positive-Raten sind in Tabelle3.8aufgefuhrt.

Die beste Leistungsfahigkeit zeigen die Support-Vektor-Maschinen und der Algorithmus der ge-wichteten Mehrheit. Die False-Positive-Rate wird durch den Einsatz dieser Algorithmen auf biszu 0,99% gesenkt undubertrifft die Ergebnisse der einzelnen Module aus der Hauptevaluationdeutlich.

55

Page 56: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

Modul Analysekonzept Erkennungsrate False-Positive-Rate

ripper RIPPER-Algorithmus 1,0 0,0164

svm Support-Vektor-Maschinen 1,0 0,0109

lfd Lineare Fisher-Diskriminante 1,0 0,0184

wm Gewichtete Mehrheit 1,0 0,0099

Tabelle 3.8: Erkennungs- und False-Positive-Raten der Korrelation

Um die Funktionsweise der Korrelation besser zu verstehen, werden die Korrelationsprofile desAlgorithmus der gewichteten Mehrheit gesondert untersucht, da dieser die beste False-Positive-Rate erzielt.

Der Algorithmus generiert fur jedes Programm ein Profil, das aus einem dreidimensionalen Ge-wichtsvektorg besteht. Die Komponenten des Vektors(g1, g2, g3) sind die Gewichte fur die Aus-gabewerte der Modulestr, ripper undrnn.

Es zeigt sich, dass fur jedes Programm eine sehr unterschiedliche Gewichtung der Ausgabewerteerlernt wird. Um eine einheitliche Untersuchung vorzunehmen, werden die Gewichtsvektorendaheruber die folgenden zwei Schritte vereinheitlicht.

1. Die Gewichtsvektoren werden normiert, so dass die Summe der einzelnen Komponentenjedes Vektors den Wert 1 ergibt.

2. Die Komponenten werdenuber die Funktionb binarisiert. Als Schwellwerts wird fur dieBinarisierung der Wert 0,1 verwendet.

b(gi, s) =

1 falls gi ≥ s

0 falls gi < s

Es entstehen kanonische Vektoren, wie z. B.(1, 0, 0) fur ein Korrelationsprofil, das nur denString-Transducer wertet oder(0, 1, 1) fur ein Profil, das den RIPPER-Algorithmus und die re-kurrenten neuronalen Netze gleichwertig gewichtet.

Insgesamt werden in den Korrelationsprofilen der Untersuchung sechs der sieben moglichen ka-nonischen Vektoren beobachtet. Abbildung3.8zeigt die Kombinationen und deren Haufigkeiten.

Diese Diversitat der Korrelationsprofile erlaubt die Annahme, dass die einzelnen Analysekonzep-te unterschiedliche Eigenschaften des Programmverhaltens erlernen und daher eine Korrelationder Analysekonzepte das tatsachliche Verhalten der Programme besser erfasst.

56

Page 57: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

Kombination Vektor Anteil Module

str — — (1, 0, 0) 47% 1

— rnn — (0, 1, 0) 18% 1

— — ripper (0, 0, 1) 3% 1

str rnn — (1, 1, 0) 11% 2

str — ripper (1, 0, 1) 5% 2

— rnn ripper (0, 1, 1) 0% 2

str rnn ripper (1, 1, 1) 16% 3

(a) Tabellarische Darstellung (b) Graphische Darstellung

Abbildung 3.8: Korrelationskombinationen der gewichteten Mehrheit

So erlernt das Modell des String-Transducers monotones Verhalten wie haufig wiederholtesLesen und Schreiben besser als rekurrente neuronale Netze, deren Kontextspeicher durch diehaufige Wiederholung nicht genutzt werden kann. Hingegen sind rekurrente neuronale Netze inder Lage, zeitabhangige Strukturen wie z. B. Schleifen und bedingte Sprunge zu modellieren.

Die Korrelation verknupft diese Eigenschaften der Lernalgorithmen individuell fur jedes Pro-gramm und gewichtet die Ausgabewerte der Analysekonzepte entsprechend des eigentlichenProgrammverhaltens. Als Resultat kann so mit einer Korrelation von Algorithmen eine deut-lich hohere Leistungsfahigkeit erzielt werden, als mit einzelnen Algorithmen des maschinellenLernens.

57

Page 58: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

4 Schlussbemerkungen

Die Ergebnisse dieser Arbeit zeigen, dass Algorithmen des maschinellen Lernens erfolgreichzur Angriffserkennung in HIDS eingesetzt werden konnen. Das vorgestellte HIDS,Kraken IDS,nutzt hierzu dynamisch ladbare Module, die verschiedene Lernalgorithmen als Analysekonzep-te implementieren. Diese lernfahigen Module sind in der Lage aus Systemaufrufsequenzen einProfil fur das zu Grunde liegende Programmverhalten zu modellieren und dieses zur Anomalie-erkennung anzuwenden.

Auf umfangreichen realen Evaluationsdaten erkennt das HIDS alle aufgezeichneten Angriffe,obwohl die Lernalgorithmen nur mit Normalverhalten angelernt werden und die Angriffe fur dasSystem somit unbekannt sind. Es ergibt sich eine Erkennungsrate von 100%. Die hochste Lei-stungsfahigkeit zeigt eine Implementierung von rekurrenten neuronalen Netzen (Elman-Netze),die eine False-Positive-Rate von 3,63% erreicht und damit die False-Positive-Raten vergleichba-rer Systeme [GSS99a, GMS00, Rie03] um ein Drittel unterschreitet.

Im Anschluss an die Evaluation einzelner Analysekonzepte werden verschiedene Korrelatio-nen von Analysekonzepten untersucht. Es wird gezeigt, dass eine korrelierte Angriffserkennungdie Leistungsfahigkeit der einzelnen Analysekonzepte deutlich verbessert. Der Algorithmus dergewichteten Mehrheit kann so angelernt werden, dass die Korrelation eines stochastischen, re-gelbasierten und neuronalen Lernalgorithmus die False-Positive-Rate auf 0,99% reduziert. DieErkennungsrate verbleibt bei 100%.

Das Kraken IDS ist daher zum Zeitpunkt dieser Arbeit das leistungsstarkste HIDS, das auf Al-gorithmen des maschinellen Lernens basiert.

Dennoch schrankt die False-Positive-Rate von 0,99% den Einsatzbereich des Systems ein, da ho-he Administrationskosten durch die manuelle Verarbeitung falsch erkannter Angriffe entstehenkonnen. Fur Programme wie z. B. einen Webserver, der weituber 1000 Prozesse am Tag startet,ist eineUberwachung durch das Kraken IDS vermutlich nicht moglich.

In der Praxis ist zwischen den Administrationskosten und dem Vorteil der Erkennung von neuenund unbekannten Angriffen abzuwagen. Das HIDS eignet sich daher fur Umgebungen, in denensehr hohe Sicherheit gefordert ist, wie z. B. in Rechnersystemen von Banken und staatlichenEinrichtungen. Es erganzt klassische Sicherheitsmaßnahmen wie das regelmaßige Einspielen vonSicherheitsupdates oder die Installation von Paketfiltern und senkt somit die Wahrscheinlichkeiteiner unbeobachteten Kompromittierung.

58

Page 59: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

Eine gute Integration des HIDS in existierende Sicherheitssysteme auf Linux- oder Unix-Basiswird durch die POSIX-konforme Implementierung, die Unterstutzung von Linux- und Solaris-Auditsystemen und den Einsatz des IDMEF-Standards fur den Austausch von Warnnachrichtenermoglicht.

Das Kraken IDS soll ab Marz 2004 auf Linux-Rechnersystemen des Studentischen Projekts Li-nux Netzwerk der Freien Universitat Berlin eingesetzt und weitergehend untersucht werden. EineVeroffentlichung der Quellen ist fur April 2004 geplant.

Ausblick

Die hohe False-Positive-Rate von lernfahigen HIDS erschwert den allgemeinen Einsatz dieserSysteme. Es ist daher sinnvoll, weitere Untersuchungen zur Verbesserung der Leistungsfahigkeitvon maschinellem Lernen in HIDS vorzunehmen.

1. Die in dieser Arbeit vorgestellten Lernalgorithmen spiegeln nur einen kleinen Teil des Be-reichs der kunstlichen Intelligenz wider. Die Untersuchungen zu maschinellem Lernen inHIDS sollten daher auf weitere, jungere Algorithmen wiegenetische Algorithmen, geneti-sche ProgrammierungoderRegressionssplinesausgedehnt werden.

2. HIDS identifizieren nicht Angriffe aller Angriffstypen. Die Koppelung des vorgestelltenHIDS mit einem NIDS wie Snort [Roe04] konnte einhybrides IDSrealisieren, das alleAngriffstypen abdeckt und eine hohere Leistungsfahigkeit aufzeigt. Der IDMEF-Standardkonnte hierbei zur Kommunikation zwischen den IDS-Komponenten genutzt werden.

3. Die Angriffserkennung muss nicht diskretuber die zwei Zustandenormal und anomalrealisiert werden, sondern kann auchstetigwie bei der Systemaufrufverzogerung [SF00]erfolgen. Eine Reduktion der False-Positive-Rate ist auf diesem Weg nicht moglich. DieAnwendung von maschinellem Lernen wurde jedoch in der Praxis besser nutzbar.

Es kann angenommen werden, dass die vorgestellten Lernalgorithmen sowie deren Korrelati-on auch erfolgreich in NIDS eingesetzt werden konnen. Eine Untersuchung konnte die Arbei-ten [MJS02, MSAR03, MSA03b] zu maschinellem Lernen in NIDS von Srinivas Mukkamala etal. aufgreifen und erweitern.

Die Ergebnisse der Korrelation von Lernalgorithmen erlauben außerdem Ruckschlusse auf dieTheorie des maschinellen Lernens. Es kann anhand der Modellierung und Korrelation von Profi-len fur Verhalten untersucht werden, welche Algorithmenahnliche und welche unterschiedlicheEigenschaften des Verhaltens erlernen. Eine Klassifikation von Lernalgorithmen nach dieser Ei-genschaft konnte interessante Ergebnisse liefern.

59

Page 60: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

Dank

Besonderer Dank gilt Prof. Dr. Hannes Federrath von der Universitat Regensburg, der maßgeb-lich die Realisierung dieser Arbeit motivierte und forderte sowie Prof. Dr. Raul Rojas von derFreien Universitat Berlin fur seine Anregungen aus dem Feld der kunstlichen Intelligenz.

Dank gilt zudem den Mitarbeitern des Rechnerbetriebs des Instituts fur Informatik sowie denMitgliedern des Studentischen Projekts Linux Netzwerk der Freien Universitat Berlin. Ohne eineErhebung von realen Evaluationsdaten ware die anschauliche Prasentation der erzielten Ergeb-nisse nicht moglich gewesen.

Abschließend ist den zwei freiwilligen Korrektoren Astrid Langer und Philipp Stucke zu danken,die geholfen haben, diese Arbeit von etlichen Fehlern zu befreien.

60

Page 61: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

5 Bibliographie

5.1 Intrusion-Detection-Systeme

[Bie02] Thomas Biege.Modulares System zur Erstellung von flexiblenIntrusion-Detection- und -Countermeasure-Umgebungen. Diplomarbeit,Fachhochschule Dortmund, Deutschland, Dezember 2002.(http://sourceforge.net/projects/m-ice)

[BM01] Rebecca Bace, Peter Mell.NIST Special Publication on Intrusion DetectionSystems. National Institute of Standards and Technology, 2001.(http://csrc.nist.gov/publications/nistpubs/800-31/sp800-31.pdf)

[BSI02] BSI-Leitfaden zur Einfuhrung von Intrusion-Detection-Systemen. ConSecurGmbH im Auftrag des Bundesamtes fur Sicherheit in der Informationstechnik,Bonn, Deutschland, 2002.(http://www.bsi.de/literat/studien/ids02)

[BSM00] SunSHIELD Basic Security Module Guide (Solaris 8). Sun Microsystems, Inc.,Palo Alto, USA, Februar 2000. ISBN 1-40-052231-5(http://docs.sun.com/doc/806-1789?a=load)

[CC99] Common Criteria for Information Technology Security Evaluation – Part 2. NIST,NSA (USA), CSE (Kanada), BSI (Deutschland), NNCSA (Niederlande), CESG(England), SCSSI (Frankreich), August 1999.

[CD03] David A. Curry, Herve Debar.Intrusion Detection Message Exchange FormatData Model and Extensible Markup Language (XML) Document Type Definition.Intrusion Detection Working Group, Januar 2003.(http://www.ietf.org/internet-drafts/draft-ietf-idwg-idmef-xml-11.txt)

[CLF+99] Robert K. Cunningham, Richard P. Lippmann, David J. Fried et al.EvaluatingIntrusion Detection Systems without Attacking your Friends: The 1998 DARPAIntrusion Detection Evaluation. In: Proceedings of the SANS 1999, 1999.(http://www.ll.mit.edu/IST/ideval/pubs/1999/EvaluatingIDs DARPA1998.pdf)

[FKP+99] Rich Feiertag, Cliff Kahn, Phil Porras, Dan Schnackenberg, Stuart Staniford-Chen.A Common Intrusion Specification Language (CISL). CIDF Working Group, Juni1999.(http://www.isi.edu/˜brian/cidf/drafts/language.txt)

61

Page 62: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

[FMW02] Benjamin Feinstein, Gregory Matthews, John White.The Intrusion DetectionExchange Protocol (IDXP). Intrusion Detection Working Group, Oktober 2002.(http://www.ietf.org/internet-drafts/draft-ietf-idwg-beep-idxp-07.txt)

[HRL01] Joshua W. Haines, Lee M. Rossey, Richard P. Lippmann.Extending the DARPAOff-Line Intrusion Detection Evaluation. In: Proceedings of the DARPAInformation Survivability Conference and Exposition II, Seite 35–45, Juni 2001.(http://www.ll.mit.edu/IST/ideval/pubs/2001/discex01paper.pdf)

[ISO02] Information technology - Security techniques - IT intrusion detection framework.International Organisation for Standardization, ISO/IEC TR 15947:2002(E), 2002.

[KBS98] Clifford Kahn, Don Bolinger, Dan Schnackenbeg.Communication in the CommonIntrusion Detection Framework. CIDF Working Group, Juni 1998.(http://www.isi.edu/˜brian/cidf/drafts/communication.txt)

[Ken99] Kristopher Kendall.A Database of Computer Attacks for the Evaluation ofIntrusion Detection Systems. Diplomarbeit, Massachusetts Institute of Technology,Mai 1999.(http://www.ll.mit.edu/IST/ideval/pubs/1998/kkendallthesis.pdf)

[KPSCT98] Clifford Kahn, Phillip A. Porras, Stuart Staniford-Chen, Brian Tung.A CommonIntrusion Detection Framework. Journal of Computer Security, Juli 1998.(http://www.isi.edu/˜brian/cidf/papers/cidf-jcs.ps)

[LFG+00] Richard P. Lippmann, David J. Fried, Isaac Graf et al.Evaluating IntrusionDetection Systems: The 1998 DARPA Off-line Intrusion Detection Evaluation. In:Proceedings of the 2000 DARPA Information Survivability Conference andExposition, Volume 2, 2000.(http://www.ll.mit.edu/IST/ideval/pubs/2000/discex00paper.pdf)

[MHL +03] Peter Mell, Vincent Hu, Richard Lippmann et al.An Overview of Issues in TestingIntrusion Detection Systems. National Institute of Standards and Technology,2003.(http://csrc.nist.gov/publications/nistir/nistir-7007.pdf)

[PSSC98] Phillip A. Poras, Dan Schnackenberg, Stuart Staniford-Chen.The CommonIntrusion Detection Framework Architecture. CIDF Working Group, 1998.(http://www.isi.edu/˜brian/cidf/drafts/architecture.txt)

[Rie03a] Konrad Rieck.Konzept zum anonymen Audit unter Linux. Freie Universitat Berlin,Deutschland, Oktober 2003.(http://people.roqe.org/kr/docs/linux-audit.pdf)

[Rie03b] Konrad Rieck.Konzept zur datenschutzorientierten Verarbeitung vonSolaris-Audit-Logs. Freie Universitat Berlin, Deutschland, Januar 2003.(http://people.roqe.org/kr/docs/bsm-concept.pdf)

62

Page 63: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

[SF00] Anil Somayaji, Stephanie Forrest.Automated Response Using System-CallDelays. In: 9th Usenix Security Symposium, Seite 185–198, Denver, USA, August2000.(http://www.csd.uch.gr/˜hy558/reports/sarbanisauto.pdf)

[Sob99] Michael Sobirey.Datenschutzorientiertes Intrusion Detection. Datenschutz undDatensicherheit Fachbeitrage. Vieweg-Verlag, Wiesbaden, Deutschland, 1999.ISBN 3-528-05704-1

[Spi03] Lance Spitzner.Honeypots: Tracking Hackers. Addison Wesley, Boston, USA,2003. ISBN 0-32-110895-7(http://www.tracking-hackers.com)

[vHK98] Josef von Helden, Stefan Karsch.Grundlagen, Forderungen und Marktubersichtfur Intrusion-Detection-Systeme (IDS) und Intrusion-Response-Systeme (IRS).debis IT Security Services GmbH im Auftrag des Bundesamtes fur Sicherheit inder Informationstechnik, Bonn, Deutschland, Oktober 1998.(http://www.bsi.de/literat/studien/ids/ids-stud.pdf)

[WE02] Mark Wood, Mike Erlinger.Intrusion Detection Message Exchange Requirements.Intrusion Detection Working Group, Oktober 2002.(http://www.ietf.org/internet-drafts/draft-ietf-idwg-requirements-10.txt)

[WFCR01] Huaqiang Wei, Deb Frinke, Olivia Carter, Chris Ritter.Cost-Benefit Analysis forNetwork Intrusion Detection Systems. In: Proceedings of the CSI 28th AnnualComputer Security Conference, Oktober 2001.(http://www.csds.uidaho.edu/director/costbenefit.pdf)

[WG03] Wiliam Wolfe, Javier Godinez.Secure Auditing for Linux (SAL) Software DesignDocument. Space and Naval Warfare Systems Center, San Diego, USA, Februar2003.(http://secureaudit.sourceforge.net/docs/SALSDD 1.pdf)

[Zar03] Krzysztof Zaraska.Prelude IDS: current state and development perspectives. In:Pingwinaria, Krynica, Polen, Marz 2003.(http://www.prelude-ids.org/download/misc/pingwinaria/2003/paper.pdf)

5.2 Maschinelles Lernen

[Bur98] Christopher J. C. Burges.A Tutorial on Support Vector Machines for PatternRecognition. Data Mining and Knowledge Discovery, 2(2):121–167, 1998.(http://guppy.mpe.nus.edu.sg/˜mpessk/svm/burges.ps)

[Coh95] William W. Cohen.Fast Effective Rule Induction. In: Machine Learning:Proceedings of the 12th International Conference, 1995.(http://wcohen.com/postscript/ml-95-ripper.ps)

63

Page 64: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

[CS99] William W. Cohen, Yoram Singer.A Simple, Fast, and Effective Rule Learner. In:Proceedings of Annual Conference of American Association for ArtificialIntelligence, 1999.(http://wcohen.com/postscript/aaai-99-slipper.ps)

[DHS00] Richard O. Duda, Peter E. Hart, David G. Stork.Pattern Classification. WileyInterscience, New York, USA, 2. Edition, November 2000. ISBN 0-471-05669-3(http://rii.ricoh.com/˜stork/DHS.html)

[Elm90] Jeffrey L. Elman.Finding Structure in Time. Cognitive Science, 14(2):179–211,1990.(http://crl.ucsd.edu/˜elman/Papers/fsit.pdf)

[Elm91] Jeffrey L. Elman.Distributed Representations, Simple Recurrent Networks, andGrammatical Structure. Machine Learning, 7:195–225, 1991.(ftp://ftp.crl.ucsd.edu/pub/neuralnets/machinelearning.pdf)

[FW94] Johannes Furnkranz, Gerhard Widmer.Incremental Reduced Error Pruning (IREP).In: Machine Learning: Proceedings of the 11th International Conference, NewBrunswick, USA, 1994.

[Joa99] Thorsten Joachims.Making Large-Scale Support Vector Machine LearningPractical. In: Advances in Kernel Methods: Support Vector Machines. MIT Press,Cambridge, USA, 1999.(http://www.cs.cornell.edu/People/tj/publications/joachims99a.pdf)

[LW89] Nick Littlestone, Manfred K. Warmuth.The Weighted Majority Algorithm. In:Proceedings of the IEEE Symposium on Foundations of Computer Science, Seite256 – 261, 1989.(http://www.cse.ucsc.edu/˜manfred/pubs/wm.ps)

[Mit97] Tom Mitchell. Machine Learning. McGraw-Hill Book Co, Singapur, InternationaleEdition, 1997. ISBN 0-07-115467-1(http://www-2.cs.cmu.edu/afs/cs.cmu.edu/user/mitchell/ftp/mlbook.html)

[Moz93] Michael C. Mozer.Neural Net Architectures for Temporal Sequences Processing.In: Time Series Prediction: Forecasting the Future and Understanding the Past,Volume 15, Seite 243–264. Addison Wesley, Reading, USA, 1993.(ftp://ftp.cs.colorado.edu/users/mozer/papers/timeseries.pdf)

[MST94] Donald Michie, David J. Spiegelhalter, Charles C. Taylor.Machine Learning,Neural and Statistical Classification. Ellis Horwood, Chichester, England, 1994.ISBN 0-13-106360-X(http://www.amsta.leeds.ac.uk/˜charles/statlog)

[PR96] Marcus Pfister, Raul Rojas.Hybrid learning algorithms for neural networks — theadaptive inclusion of second order information. Zeitschrift fur AngewandteMathematik und Mechanik, 76(1):215–218, 1996.(http://www.mathematik.uni-halle.de/reports/sources/1995/95-08report.ps)

64

Page 65: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

[QCJ93] J. Ross Quinlan, R. Mike Cameron-Jones.FOIL: A Midterm Report. In: MachineLearning: Proceedings of the European Conference, Volume 667, Seite 3–20, Wien,Ostrreich, 1993.(http://www.cse.unsw.edu.au/˜quinlan/q+cj.ecml93.ps)

[Rab89] Lawrence R. Rabiner.A Tutorial on Hidden Markov Models and SelectedApplications in Speech Recognition. In: Proceedings of the IEEE, Nummer 2 von77, Februar 1989.

[RB92] Martin Riedmiller, Heinrich Braun.RPROP - A Fast Adaptive Learning Algorithm.Universitat Karlsruhe, Deutschland, 1992.

[Rie94] Martin Riedmiller.RPROP - Description and Implementation Details. UniversitatKarlsruhe, Deutschland, Januar 1994.(http://ls1-www.cs.uni-dortmund.de/˜riedmill/publications/rprop.details.ps.Z)

[Roj96] Raul Rojas.Neural Networks: A Systematic Approach. Springer-Verlag, Berlin,Deutschland, 1996. ISBN 3-450-60505-3

[VGS97] Vladimir N. Vapnik, Steven E. Golowich, Alex Smola.Support vector method forFunction Approximation, Regression Estimation and Signal Processing. In:Advances in Neural Information Processing Systems, Volume 10, Seite 281–287,Cambridge, USA, 1997. The MIT Press.

5.3 Maschinelles Lernen in IDS

[DBS92] H. Debar, M. Becker, D. Siboni.A Neural Network Component for an IntrusionDetection System. In: Proceedings of the IEEE Symposium on Research in Securityand Privacy, Seite 240–250, Oakland, USA, 1992.

[DCD+01] Timothy Draelos, Michael Collins, David Duggan, Edward Thomas, DonaldWunsch.Experiments on Adaptive Techniques for Host-Based Intrusion Detection.Technical report, Sandia National Laboratories, Albuquerque, USA, September2001.

[DFH96] Patrik D’haeseleer, Stephanie Forrest, Paul Helman.An Immunological Approachto Change Detection: Algorithms, Analysis and Implications. In: Proceedings of theIEEE Symposium on Research in Security and Privacy, Oakland, USA, 1996.(http://www.cs.unm.edu/˜immsec/publications/CSFW96.pdf)

[D’h96] Patrik D’haeseleer.An Immunological Approach to Change Detection: TheoreticalResults. In: Proceedings of 9th IEEE Computer Security Foundation Workshop,Dromquinna Manor, County Kerry, Irland, Juni 1996.(http://www.cs.unm.edu/˜forrest/publications/ieee-sp-96-neg-selec.pdf)

65

Page 66: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

[EAP+02] Eleazar Eskin, Andrew Arnold, Michael Prerau, Leonid Portnoy, Salvatore Stolfo.A Geometric Framework for Unsupervised Anomaly Detection: DetectingIntrusions in Unlabeled Data. Data Mining for Security Applications, 2002.(http://www.cs.huji.ac.il/˜eeskin/papers/uad-dmsa02.ps)

[ELS01] Eleazar Eskin, Wenke Lee, Salvatore J. Stolfo.Modeling System Calls for IntrusionDetections with Dynamic Window Sizes. In: Proceedings of the DARPAInformation Survivability Conference and Exposition II, Juni 2001.(http://www.cs.columbia.edu/ids/publications/smt-syscall-discex01.ps)

[End98] David Endler.Intrusion Detection Applying Machine Learning to Solaris AuditData. In: Proceedings of the 14th Annual Computer Security ApplicationsConference, Seite 268–279, Phoenix, USA, 1998.(http://www.cs.umbc.edu/cadip/docs/NetworkIntrusion/endler98.ps)

[FHSL96] Stephanie Forrest, Steven A. Hofmeyr, Anil Somayaji, Thomas A. Longstaff.ASense of Self for Unix Processes. In: Proceedinges of the IEEE Symposium onResearch in Security and Privacy, Seite 120–128, Oakland, USA, 1996.(http://cs.unm.edu/˜forrest/publications/ieee-sp-96-unix.pdf)

[GMS00] Anup K. Ghosh, Christoph C. Michael, Michael Schatz.A Real-Time IntrusionDetection System Based on Learning Program Behavior. In: Proceedings of theThird International Workshop on Recent Advances in Intrusion Detection (RAID),2000.(http://www.cigitallabs.com/papers/download/ghoshraid00.pdf)

[GSS99a] Anup K. Ghosh, Aaron Schwartzbard, Michael Schatz.Learning ProgramBehavior Profiles for Intrusion Detection. In: Proceedings of the 1st USENIXWorkshop on Intrusion Detection and Network Monitoring, Seite 51–62, SantaClara, USA, April 1999.(http://www.cigital.com/papers/download/usenixid99.pdf)

[HFS98] Steven A. Hofmeyr, Stephanie Forrest, Anil Somayaji.Intrusion Detection UsingSequences of System Calls. Journal of Computer Security, 6(3):151–180, 1998.(http://www.cs.unm.edu/˜steveah/jcs-accepted.ps)

[LB97] Terran Lane, Carla E. Brodley.An Application of Machine Learning to AnomalyDetection. In: Proceedings of 20th National Information Systems SecurityConference, Volume 1, Seite 366 – 380, Februar 1997.(http://www.cs.unm.edu/˜terran/research/pubs/nissc97paper.ps.gz)

[LB99] Terran Lane, Carla E. Brodley.Temporal Sequence Learning and Data Reductionfor Anomaly Detection Lane. ACM Transactions on Information and SystemSecurity, 2(3):295 – 331, 1999.(http://www.cs.unm.edu/˜terran/research/pubs/acmtissec99.pdf)

[LSC97] Wenke Lee, Salvatore J. Stolfo, Patrick Chan.Learning Patterns from Unix ProcessExecution Traces for Intrusion Detection. In: Proceedings on the American

66

Page 67: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

Association for Artificial Intelligence workshop on Artificial Intelligence methodsin Fraud and Risk Management, 1997.(http://cs.fit.edu/˜pkc/papers/aaai97-ws.ps)

[LSM99] Wenke Lee, Salvatore J. Stolfo, Kui W. Mok.A Data Mining Framework forBuilding Intrusion Detection Models. In: Proceedings of the IEEE Symposium onResearch in Security and Privacy, Seite 120–132, Oakland, USA, 1999.(http://www.cs.umbc.edu/cadip/docs/NetworkIntrusion/ieeesp99lee.ps)

[MG00] Christoph C. Michael, Anuk K. Ghosh.Two State-based Approaches toProgram-based anomaly detection. In: Proceedings of 16th Annual ComputerSecurity Applications Conference, New Orleans, USA, Dezember 2000.(http://www.acsac.org/2000/papers/96.pdf)

[MJS02] Srinivas Mukkamala, Guadalupe Janoski, Andrew Sung.Intrusion Detection usingNeural Networks and Support Vector Machines. In: Proceedings of IEEEInternation Joint Conference on Neural Networks, Seite 1702–1707, Mai 2002.(http://www.cs.nmt.edu/˜IT/papers/hawaii7.pdf)

[MSA03b] Srinivas Mukkamala, Andrew H. Sung, Ajith Abraham.Modeling IntrusionDetection Systems Using Linear Genetic Programming Approach. Eingereicht zur17th International Conference on Industrial and Engineering Applications ofArtificial Intelligence and Expert Systems, 2003.

[MSAR03] Srinivas Mukkamala, Andrew H. Sung, Ajith Abraham, Vitorino Ramos.IntrusionDetection Systems Using Adaptive Regression Splines. Eingereicht zur 6thInternational Conference on Enterprise Information Systems, 2003.

[Rie03] Konrad Rieck.Analyse von neuronalen Netzen in host-basierten IntrusionDetection Systemen. Freie Universitat Berlin, Deutschland, Marz 2003.(http://people.roqe.org/kr/docs/nn-ids.pdf)

[RLM98] Jake Ryan, Meng-Jang Lin, Risto Miikkulainen.Intrusion Detection with NeuralNetworks. In: Advances in Neural Information Processing Systems, Volume 10,Cambridge, USA, 1998. The MIT Press.(http://www.veniceconsulting.com/docs/ryan.intrusion.pdf)

[WFP99] Christina Warrender, Stephanie Forrest, Barak A. Pearlmutter.Detecting Intrusionsusing System Calls: Alternative Data Models. In: Proceedings of the IEEESymposium on Research in Security and Privacy, Seite 133–145, Oakland, USA,1999.(http://www.cs.unm.edu/˜immsec/publications/oakland-with-cite.pdf)

67

Page 68: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

5.4 Weitere Literatur

[DG96] L. Peter Deutsch, Jean-Loup Gailly.zLib Compressed Data Format Specificationversion 3. The Internet Engineering Task Force, RFC 1950, 1996.(http://www.gzip.org/zlib/rfc1950-a4.ps)

[IEE85] Standard for Binary Floating-Point Arithmetic. Institute of Electrical andElectronics Engineers, IEEE 754-1985, 1985.(http://grouper.ieee.org/groups/754/)

[MW00] Rainer Metschke, Rita Wellbrock.Datenschutz in Wissenschaft und Forschung.Berliner Beauftragter fur Datenschutz und das Recht auf Akteneinsicht, HessischerDatenschutzbeauftragter, Berlin, Deutschland, November 2000.

[POS96] Portable Operating System Interface (POSIX). Portable Applications StandardsCommittee of the IEEE, ISO/IEC 9945-1, ANSI/IEEE Std. 1003.1, 1996.

[Tan02] Andrew S. Tanenbaum.Moderne Betriebssysteme. Pearson Studium / Prentice Hall,Munchen, Deutschland, 2. Edition, 2002. ISBN 3-827-37019-1

5.5 Internetreferenzen

[CER03] Computer Emergency Response Team (CERT)/CC Statistics 1988–2003. CarnegieMellon University, Pittsburgh, USA, 2003.(http://www.cert.org/stats)

[Cok03] Coki (Pseudonym).Linux /usr/bin/as Angriff. Bugtraq-Mailingliste – SecurityFocus,2003.(http://www.securityfocus.com/archive/1/344128)

[Cow03] Cowboy (Pseudonym).Linux Samba Angriff. 0x333 Outsiders Security Labs, 2003.(http://www.0x333.org/exploit/0x333hate.c)

[CVEa] Common Vulnerabilities and Exposure (CVE). The MITRE Corporation, Bedford,USA. (http://www.cve.mitre.org)

[CVEb] CVE-Compatible Products and Services. The MITRE Corporation, Bedford, USA.(http://www.cve.mitre.org/compatible)

[Cyb03] Johnny Cyberpunk (Pseudonym).Windows & Linux RealServer Angriff. TheHacker’s Choice, November 2003.(http://www.thc.org/misc/sploits/THCREALbad.zip)

[DEB] Debian GNU/Linux. Software in the Public Interest, Inc.(http://www.debian.org)

[Dem03] Demz (Pseudonym).Linux UnAce Angriff. Bugtraq-Mailingliste – SecurityFocus,November 2003.(http://www.securityfocus.com/archive/1/344128)

68

Page 69: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

[F+02] Stephanie Forrest et al.Computer Immune Systems – Data Sets and Software.University of New Mexico, Albuquerque, USA, 2002.(http://www.cs.unm.edu/˜immsec/systemcalls.htm)

[IDM] libidmef – An IDMEF XML Library Implementation. Silicon Defense, USA.(http://www.silicondefense.com/idwg/libidmef)

[IDW] Intrusion Detection Working Group. The Internet Engineering Task Force.(http://www.ietf.org/html.charters/idwg-charter.html)

[IDX] libidxp – An IDXP/BEEP Protocol Implementation. Codefactory AB, Umea,Schweden.(http://idxp.codefactory.se)

[Joa02] Thorsten Joachims.SVMlight – Support Vector Machine Implementation. UniversitatDortmund, Deutschland, Juli 2002.(http://svmlight.joachims.org)

[LC+00] Richard P. Lippmann, Robert K. Cunningham et al.DARPA Intrusion DetectionEvaluation 1998-2000. Lincoln Laboratory, Massachusetts Institute of Technology,Lexington, USA, 2000.(http://www.ll.mit.edu/IST/ideval/docs/docsindex.html)

[OPSa] OPSEC – Open Platform for Security. Check Point Software Technologies Ltd.,Ramat Gan, Israel.(http://www.opsec.com)

[OPSb] OPSEC Partners Security Enforcement – Intrusion Detection and Protection. CheckPoint Software Technologies Ltd., Ramat Gan, Israel.(http://www.opsec.com/solutions/secintrusion detection.html)

[Roe04] Martin Roesch.SNORT – The Open Source Network Intrusion Detection System.Sourcefire, Inc., Columbia, USA, 2004.(http://www.snort.org)

[Sch97a] Cristian Schipor.Solaris /bin/eject Angriff. Bugtraq-Mailingliste – SecurityFocus,Marz 1997.(http://www.securityfocus.com/archive/1/6428)

[Sch97b] Cristian Schipor.Solaris /usr/sbin/fdformat Angriff. Bugtraq-Mailingliste –SecurityFocus, Marz 1997.(http://www.securityfocus.com/archive/1/6459)

[Sch97c] Cristian Schipor.Solaris /usr/sbin/ffbconfig Angriff. Bugtraq-Mailingliste –SecurityFocus, Februar 1997.(http://www.securityfocus.com/archive/1/6285)

[SL94] David E. Stewart, Zbigniew Leyk.Meschach Library. Australian NationalUniversity, Canberra, Australien, 1994.(http://www.math.uiowa.edu/˜dstewart/meschach)

[Sor03] Sorbo (Pseudonym).Linux Pine Angriff. Bugtraq-Mailingliste – SecurityFocus,September 2003.(http://www.securityfocus.com/archive/1/337545)

[SUS] SuSE Linux. SuSE Linux AG, Nurnberg, Deutschland.(http://www.suse.de)

69

Page 70: Maschinelles Lernen in hostbasierten Intrusion-Detection-Systemenuser.informatik.uni-goettingen.de/~krieck/docs/2004... · 2015-02-14 · Maschinelles Lernen ist ein geeignetes Mittel,

Erkl arung

Hiermit erklare ich, dass ich die vorliegende Arbeit selbststandig angefertigt sowie keine anderenals die angegebenen Hilfsmittel verwendet habe.

Berlin, den 8. Marz 2004

Konrad Rieck

70