Erstellung eines Intrusion Detection Systems für eine Firewall
- Art: Diplomarbeit
- Autor: Marc Tresse
- Abgabedatum: Oktober 1999
- Umfang: 72 Seiten
- Dateigröße: 611,4 KB
- Note: 1,0
- Institution / Hochschule: Technische Universität Darmstadt Deutschland
- ISBN (eBook): 978-3-8324-1865-6
-
ISBN (Paperback) :
978-3-8324-1865-6 P - ISBN (CD) :978-3-8324-1865-6 CD
- Sprache: Deutsch
- Prämierung:
- Arbeit zitieren: Tresse, Marc Oktober 1999: Erstellung eines Intrusion Detection Systems für eine Firewall, Hamburg: Diplomica Verlag
- Schlagworte: Einbruchserkennung, Security, Hacker, Firewall, Computersicherheit
In den Warenkorb
38,00 €
Diplomarbeit von Marc Tresse
Einleitung:
Computersicherheit ist in der heutigen Zeit nicht nur wegen den sich häufenden Medienberichten über gelungene Einbruchsversuche ein vieldiskutiertes Thema. Eine Folge davon ist ein deutlicher Anstieg der Nachfrage an Sicherheitsprodukten, zu denen auch Intrusion Detection Systeme zählen. Übereinstimmend wird geschätzt, daß sich durch deren Verwendung ein höheres Niveau der Systemsicherheit erreichen läßt. 1999 wurde in 37% aller Unternehmen, für die Sicherheit von Bedeutung ist, ID-Produkte benutzt (Vorjahr 29%). Das Sicherheitsniveau dieser Produkte hängt unter anderem wesentlich von der Effizienz des Zusammenwirkens mit anderen Produkten wie z.B. Firewalls ab. Dieses Zusammenwirken ist bisher teilweise noch nicht vorhanden, bzw. noch nicht optimiert. In der vorliegenden Diplomarbeit wird nun ein Ansatz vorgestellt, der durch die aktive Verknüpfung der Komponenten Firewall und IDS die Effizienz beider Systeme steigern und zusätzliche Möglichkeiten erschließen soll. Da diese Kopplung Implikationen auf Design und auszuwählende Mechanismen des zu integrierenden IDS hat, wird hier ein Modell vorgestellt, welches für diesen Zweck optimiert wurde. Die vorliegende Arbeit enthält weiterhin eine detaillierte Beschreibung der exemplarischen Implementierung dieses Modells, sowie die Präsentation und Bewertung erster Einsatzerfahrungen.
Inhaltsverzeichnis:
| Abbildungsverzeichnis | 4 | |
| Tabellenverzeichnis | 4 | |
| Inhaltsverzeichnis | 5 | |
| Einleitung | 7 | |
| 1. | Sicherheit in Computersystemen | 8 |
| 1.1 | Sicherheitslücken | 8 |
| 1.2 | Grundsätzliche Vorgehensweise eines Eindringlings | 9 |
| 1.3 | Angriffsarten | 9 |
| 1.4 | Gegenmaßnahmen | 11 |
| 2. | Intrusion Detection Systeme | 12 |
| 2.1 | IDS-Eigenschaften | 12 |
| 2.2 | Klassifizierung von Intrusion Detection Systemen | 13 |
| 2.3 | Arbeitsweise eines IDS | 14 |
| 2.3.1 | Datenselektion | 14 |
| 2.3.2 | Datenanalyse | 16 |
| 2.3.3 | IDS-Sprachen | 19 |
| 2.4 | Kombination von Firewall und IDS | 22 |
| 3. | Entwurf eines Firewall-IDS | 24 |
| 3.1 | Theoretische Modelle | 24 |
| 3.1.1 | Das ECA-Modell | 24 |
| 3.1.2 | Ein generisches Intrusion Detection Modell | 27 |
| 3.2 | Grundlegende IDS-Entwurfskonzepte | 28 |
| 3.2.1 | Modellauswahl | 28 |
| 3.2.2 | Typ des zu entwerfenden Systems | 28 |
| 3.2.2 | Leistungsmerkmale des zu entwerfenden Systems | 29 |
| 3.2.3 | Auswahl des Angriffserkennungsmechanismus | 30 |
| 3.2.4 | Auswahl der Datenbereitstellung | 31 |
| 3.2.5 | Integration der Analysemethoden | 32 |
| 3.2.6 | Konzeption der Endlichen Automaten für die Mustererkennung | 32 |
| 3.2.7 | Entwurf der IDS-Sprache | 32 |
| 3.3 | IDS-spezifische Konkretisierung des ECA-Modells | 35 |
| 3.4 | Integration des IDS in die VDMFA-Firewall | 38 |
| 3.4.1 | Firewall-Architektur: Überblick | 38 |
| 3.2.2 | Integration des IDS | 39 |
| 3.2.3 | IDS/Firewall-Kommunikationsinfrastruktur | 40 |
| 3.2.4 | IDS/Firewall-Konfiguration | 41 |
| 3.5 | Firewall-spezifische Konkretisierung des ECA-Modells | 42 |
| 4. | Prototypische Implementierung des IDS | 45 |
| 4.1 | Überblick | 45 |
| 4.1.1 | IDS-Architektur | 45 |
| 4.1.2 | Die IDS-Regelsprache | 46 |
| 4.2 | Funktionsprinzipien | 49 |
| 4.2.1 | Interpretation der IDS-Sprache | 49 |
| 4.2.2 | Die Analyzer-Klassenhierarchie | 49 |
| 4.2.2 | Realisierung der Finite State Machinen | 51 |
| 4.2.4 | Die Caches | 52 |
| 4.2.5 | Mögliche Verwendung eines Loaders im Aktionsteil von IDS-Regeln | 52 |
| 4.2.6 | Aktionsmodule | 53 |
| 4.2.7 | Das Normalwert-Modul | 53 |
| 4.3 | Dokumentation der einzelnen Klassen/Module | 54 |
| 4.3.1 | IDSMod | 54 |
| 4.3.2 | Analyzer | 55 |
| 4.3.3 | Compare | 55 |
| 4.3.4 | CacheAnalyzer | 56 |
| 4.3.5 | PacketCache | 57 |
| 4.3.6 | LogCache | 57 |
| 4.3.7 | FlowCache | 57 |
| 4.3.8 | StandardMod | 58 |
| 5. | Test | 59 |
| 5.1 | Versuchsbeschreibung | 59 |
| 5.2 | Ergebnisse | 59 |
| 6. | Ausblick | 61 |
| Anhang A - Konfigurationsdateien | 63 | |
| sys_start.ini | 63 | |
| ids_start.ini | 63 | |
| idm_start.ini | 64 | |
| Anhang B - Installation und Betrieb | 66 | |
| Anhang C - Ressourcen zum Thema Computersicherheit | 67 | |
| Quellenverzeichnis | 68 |
3.2.5 Integration der Analysemethoden Wie bereits in Abschnitt 3.2.2 angesprochen, ist es vorteilhaft, Statistische Anomalienerkennung sowie Mustererkennung zu kombinieren, um eine breitere Palette von Angriffen abdecken zu können. Es stellt sich jedoch die Frage, auf welche Weise die beiden Analysemethoden in das IDS integriert werden sollen. Beim vorliegenden Ansatz werden beide Analysemethoden über Anweisungen innerhalb der IDS-Regeln realisiert. Mit dem Bedingungsteil einer Regel ist der Benutzer in der Lage, hinreichend starke Ausdrücke zu formulieren, die eine statistische Analyse der IDS-Daten und den Vergleich mit Normalwerten, sowie einen Vergleich der Daten mit gespeicherten Angriffsmustern ermöglichen. Für die Mustererkennung werden zusätzlich Endliche Automaten eingesetzt, auf die im folgenden Abschnitt eingegangen wird. Der Vorteil bei der Integration der Analysemethoden mit Hilfe der IDS-Sprache ist die Überprüfbarkeit und Modifizierbarkeit der verwendeten Algorithmen. Wenn die Analysefunktionalität hart codiert wird, ist sie dem Benutzer zum einen verborgen, und zum anderen nicht ohne weiteres zu modifizieren. Auf die Formulierung von Angriffserkennungsalgorithmen mit Hilfe von IDS-Regeln wird in Abschnitt 4.2.2 eingegangen. [...]
3.2.4 Auswahl der Datenbereitstellung Nachdem die vom IDS zu analysierenden Daten in Kapitel 2 vorgestellt wurden, stellt sich die Frage, auf welche Art und Weise sie dem IDS zur Verfügung gestellt werden sollen. Netzwerkdaten und Systemdaten sind in ihrer Rohform für das IDS noch ungeeignet und müssen erst in ein Format gebracht werden, welches die Analyse der Daten durch einen Algorithmus erlaubt. Zielsetzung sollte aufgrund der anfallenden Datenmenge jeweils ein möglichst platzsparendes Format sein, daß jedoch maximale Information enthält. Wünschenswert ist auch, das dieses Datenformat vom Menschen interpretierbar ist. Netzwerkpakete werden daher in ihrer Form belassen, es muß lediglich möglich sein, auf Header-Informationen und Daten schnell und einfach zugreifen zu können. Bei den Systemdaten dagegen müssen Subjekt, Aktion und Objekt des beobachteten Ereignisses beschrieben werden, um sinnvolle Informationen zu erhalten. Die Protokollierung von ausgeführten Befehlen (z.B. Telnet, FTP) kann auf textueller Basis erfolgen, wodurch auf diesen Zeichenketten-Vergleichsoperationen durchgeführt werden können. Ziel ist es auch, eine Trennung zwischen Datenaufbereitung und der eigentlichen Regelabarbeitung bzw, Datenprüfung zu erreichen. Wie im vorherigen Abschnitt bereits erläutert, werden die Daten für das IDS in Caches zwischengespeichert. Deshalb liegt es nahe, die Daten bereits vor der Speicherung aufzubereiten. Dies bedeutet z.B. auch, daß Informationen, die aus den Rohdaten nicht direkt ersichtlich sind, wie z.B. die Häufigkeit des Vorkommens einer Absenderadresse bei Netzwerkpaketen, extrahiert und zusätzlich zu den reinen Paketeinformationen im Cache [...]
zunächst auf der niedrigsten Schicht (Paketebene) und meldet z.B. Pakete mit zweifelhaften Daten im Header. Dann werden die Pakete zu größeren Einheiten zusammengesetzt und im Kontext von Sessions beziehungsweise Anwendungen untersucht. Durch Inhaltsanalyse können dann z.B. Telnet- oder Http - Angriffe erkannt werden. Schließlich gibt der Analysator die Pakete an den Zielrechner weiter. Eine weitere Möglichkeit ist ein Polling/Cache-Ansatz, bei dem in einem Regelspeicher enthaltene Regeln periodisch abgearbeitet und auf in Caches gespeicherten Netzwerkpaketen und Systemdaten angewendet werden. Systemdaten sind dabei Logeinträge von Vorgängen auf der Anwendungsebene. Bei der Abarbeitung einer Regel werden die vorhandenen Daten untersucht und Auffälligkeiten werden gemeldet. Der erste Ansatz bietet die Möglichkeit der Echtzeiterkennung eines Angriffs. Allerdings ist er sehr performancekritisch, da die Pakete verzögerungsfrei weitergeleitet werden müssen und nicht zwischengespeichert werden. Außerdem scheint die Realisierung einer an das OSISchichtenmodell angelehnte Analyse und Interpretation der Daten sehr komplex. Der zweite Ansatz bietet zwar keine wirkliche Echtzeiterkennung, es besteht aber die Möglichkeit, die Abarbeitungsintervalle zwischen den einzelnen Regeln möglichst klein zu halten, und sich so an eine Echtzeitverarbeitung zumindest anzunähern. Außerdem benötigt man nur eine Regelabarbeitungskomponente, die falls die Regelsprache mächtig genug ist, auf allen Datenschichten arbeiten kann. Ein weiterer Vorteil der Verwendung von Caches ist die Möglichkeit, die IDS-Daten temporär zu speichern, so daß die Möglichkeit einer verzögerten Auswertung, sowie des Zurückgreifens auf ältere Daten besteht. Zusätzlich erscheint die Integration des IDS in die Firewall bei diesem Verfahren besser umsetzbar, da bereits vorhandene Komponenten der Firewall verwendet werden können. [...]
In den Warenkorb
38,00 €
Link zur Arbeit:
http://www.diplom.de/ean/9783832418656
Arbeit zitieren:
Tresse, Marc Oktober 1999: Erstellung eines Intrusion Detection Systems für eine Firewall, Hamburg: Diplomica Verlag
Schlagworte:
Einbruchserkennung, Security, Hacker, Firewall, Computersicherheit



