DE69817176T2 - Verfahren und Vorrichtung zur Eindringdetektion in Rechnern und Rechnernetzen - Google Patents

Verfahren und Vorrichtung zur Eindringdetektion in Rechnern und Rechnernetzen Download PDF

Info

Publication number
DE69817176T2
DE69817176T2 DE1998617176 DE69817176T DE69817176T2 DE 69817176 T2 DE69817176 T2 DE 69817176T2 DE 1998617176 DE1998617176 DE 1998617176 DE 69817176 T DE69817176 T DE 69817176T DE 69817176 T2 DE69817176 T2 DE 69817176T2
Authority
DE
Germany
Prior art keywords
component
patterns
event
sequence
intrusion detection
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE1998617176
Other languages
English (en)
Other versions
DE69817176D1 (de
Inventor
Marc C. Dacier
Herve C. Debar
Andreas A. Wespi
Aris Floratos
Isidore Rigoutsos
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Application granted granted Critical
Publication of DE69817176D1 publication Critical patent/DE69817176D1/de
Publication of DE69817176T2 publication Critical patent/DE69817176T2/de
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/554Detecting local intrusion or implementing counter-measures involving event detection and direct action

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Description

  • TECHNISCHES GEBIET
  • Die vorliegende Erfindung betrifft die Eindringdetektion, d. h. die Erkennung von Sicherheitsproblemen in einem Rechnernetz oder einem Rechner innerhalb dieses Netzes. Sie eignet sich insbesondere zur Erkennung von systemfremden Personen, die (z. B. über das Netz) in ein Rechnersystem einzudringen versuchen, und/oder von systemberechtigten Personen, die ihre Berechtigungen missbräuchlich benutzen (z. B. indem eine systemberechtigte Person unbefugt vertrauliche Daten liest). Kurz gesagt, die Erfindung verwendet einen verhaltensbasierten Ansatz für ein musterorientiertes System zur Eindringdetektion.
  • HINTERGRUND DER ERFINDUNG
  • Im Allgemeinen überwacht ein System zur Eindringdetektion dynamisch die in einer bestimmten Umgebung durchgeführten Aktionen und entscheidet, ob diese Aktionen einen Angriff oder eine zugelassene Nutzung der Umgebung darstellen.
  • Im Wesentlichen sind zwei Hauptverfahren zur Eindringdetektion bekannt. Das erste Verfahren verwendet das über Angriffe gesammelte Wissen und versucht dieses zu nutzen. Dieses Verfahren wird als wissensbasiert bezeichnet. Das zweite Verfahren erstellt ein Referenzmodell des üblichen Verhaltens des zu überwachenden Systems und sucht nach Abweichungen von der beobachteten Nutzung. Dieses Verfahren wird als verhaltensbasiert bezeichnet.
  • Dem wissensbasierten Ansatz liegt die Annahme zugrunde, dass das System alle möglichen Angriffsarten kennt. Für jeden Angriff gibt es eine bestimmte Signatur, und das System zur Eindringdetektion sucht bei der Überwachung des Datenverkehrs nach diesen Signaturen. Zum Beispiel kann man die Prüfprotokolle eines bestimmten Rechners, die in das Netz gesendeten Datenpakete usw. verfolgen. Der erste Ansatz wird von Shieh et al. in der US-Patentschrift 5,278,901 behandelt und beschrieben, die auch einen guten Überblick über die Technologie bietet. Ein Vorteil dieses Verfahrens besteht darin, dass kein falscher Alarm oder nur selten falscher Alarm ausgelöst wird, d. h. dass die Fehlalarmrate niedrig ist; der Hauptnachteil besteht darin, dass nur diejenigen Angriffe erkannt werden können, die bereits bekannt sind. Ein neu entwickelter Eindringangriff würde unerkannt bleiben, da dessen Signatur noch unbekannt ist und das System deshalb nicht danach sucht.
  • Leider gibt es gegenwärtig so viele Angriffe, dass die Menge der Signaturen sehr schnell zunimmt. Einige Signaturen lassen sich darüber hinaus schwierig ausdrücken und ein Algorithmus für deren Suche kann ziemlich zeitaufwendig sein. Ungeachtet dessen hat sich die Brauchbarkeit dieses Ansatzes erwiesen und es werden Produkte auf dem Markt angeboten, die diesen Ansatz verwenden: Zwei Beispiele für solche verfügbaren Produkte sind NetRanger von Cisco Systems, Inc., und RealSecure von Internet Security Systems, Inc.
  • Der zweite, also verhaltensbasierte Ansatz geht von der Annahme aus, dass sich das „Verhalten" eines System verändert, wenn ein Angriff auf dieses durchgeführt wird. Deshalb besteht der Ansatz darin, für ein System ein bestimmtes Normalprofil zu definieren und nach jeglichen Abweichungen von diesem definierten Normalprofil zu suchen. Es können verschiedene Verfahren (z. B. statistische Verfahren, regelbasierte Systeme, neuronale Netze) eingesetzt und unterschiedliche Überwachungsziele (z. B. die Benutzer des Systems, die Leistungsparameter des Rechnernetzes, die CPU-Takte usw.) verwendet werden. Der Hauptvorteil dieses Verfahrens gegenüber dem wissensbasierten Verfahren besteht darin, dass die Angriffsarten nicht vorher bekannt zu sein brauchen, d. h. dass unbekannte Angriffsarten erkannt werden können. Somit bleibt die Erkennung auf dem neuesten Stand, ohne dass eine Datenbank mit den bekannten Signaturen aktualisiert werden muss. Es gibt jedoch auch Nachteile: Auch ohne einen Angriff kann es zu Abweichungen kommen (z. B. Änderungen der Benutzeraktivität, neu installierte Software, neue Maschinen, neue Benutzer usw.). Daher haben alle bekannten Bemühungen in dieser Richtung zu einer ziemlich hohen Anzahl von Fehlalarmen geführt. Dieser Ansatz wird nur von einem auf dem Markt erhältlichen Produkt genutzt: CMDS von Science Applications International Corporation.
  • In dem Artikel „A Sense of Self for Unix Processes" in Proceedings of the 1996 IEEE Symposium on Security and Privacy, Oakland, Kalifornien, Mai 1996, S. 120 bis 128, beschreiben S. Forrest et al., wie man das Verhalten des "Sendmail-Daemon" modellieren kann, d. h. eines Programms, das unabhängig vom Benutzer ständig im Hintergrund läuft und die Sequenzen der Systemaufrufe benutzt, die dieses Programm während des Ablaufs generiert. Die Idee besteht darin, eine Tabelle aller Sequenzen einer fest vorgegebenen Länge (hier: 5, 6 und 11) aufeinanderfolgender Systemaufrufe zu erstellen, die man beim Überwachen der Arbeit eines Sendmail-Daemons antreffen kann. Es wurde behauptet, dass, wenn man die Angreifbarkeit des Sendmail-Codes auszunutzen versucht, eine Sequenz von Systemaufrufen generiert würde, die man in einer „normalen" Tabelle, d. h. einer aus einer Datenfolge mit normalem Verhalten generierten Tabelle, nicht findet. Versucht man jedoch diesen Ansatz anzuwenden, findet man, dass die hierfür erforderliche Tabelle ziemlich groß werden kann. Man muss betonen, dass alle Sequenzen von Systemaufrufen in dieser Tabelle dieselbe Länge besitzen, d. h. Längen von 5, 6 und 11. H. Debar, M. Dacier, M. Nassehi und A. Wespi haben in der Arbeit „Fixed vs. Variable-Length Patterns for Detecting Suspicious Process Behavior" in Proceedings of ESORICS 98, Louvain-la-Neuve, Belgien, September 1998, gezeigt, dass die Suche nach der besten Sequenzlänge zu einer „besten" Länge von 1 führt („beste" bedeutet hier, dass die kürzestmögliche Mustertabelle erzeugt wird, die jedoch alle möglichen Sequenzen in Betracht zieht). Das bedeutet, dass das System nicht nach unbekannten Sequenzen, sondern nach unbekannten Systemaufrufen sucht. Dies führt dazu, dass ein Angriff, der keinen unbekannten Systemaufruf benutzt, nicht erkannt wird. Das kann generell nicht akzeptiert werden, da ein Angriff durchgeführt werden kann, ohne einen zuvor nicht bekannten Systemaufruf zu benutzen.
  • Es gibt zwei Klassen von Informationsquellen für Systeme zur Eindringdetektion, die von H. Debar, M. Dacier und A. Wespi in „Towards a Taxonomy of Intrusion Detection Systems", IBM Research Report 3030, Juni 1998, beschrieben werden. Ausgehend davon, an welcher Stelle die Informationen gewonnen werden können, wird zwischen hostgestützten und netzgestützten Systemen zur Eindringdetektion unterschieden. Beispiele von kostgestützten Informationsquellen sind die so genannten C2-Prüfprotokolle (C2 audit trails), die im Betriebssystem UNIX bekannten syslog-Dateien oder die Ereignisprotokolle (event logs) in Windows NT. Netzgestützte Informationen werden hauptsächlich durch Analysieren der Netzpakete gewonnen.
  • Die vorliegende Erfindung betrifft, wie im Folgenden ausführlich beschrieben wird, die verhaltensbasierte Eindringdetektion unter Verwendung hostgestützter Informationsquellen. Bei einem bestimmten Prozess entscheidet das System zur Eindringdetektion, ob das Verhalten eines Prozesse als normal oder als anormal einzuschätzen ist. Anormales Verhalten stellt einen Hinweis auf ein Eindringen dar.
  • Forrest et al. beschreiben, wie oben erwähnt, in dem Artikel „A Sense of Self for UNIX Processes" in Proceedings of the 1996 IEEE Symposium on Security and Privacy, Oakland, Kalifornien, Mai 1996, S. 120 bis 128, ein Prozessmodell, das eine Menge von Mustern mit einer fest vorgegebenen Länge verwendet. Diese Muster entsprechen allen Mustern, die man möglicherweise in den Ereignissequenzen antreffen kann, die während der Trainingsphase aufgezeichnet wurden.
  • Dies führt zu einem Problem, da ein gründlicher Blick auf die Sequenzen der Prüfereignisse, die durch den unter AIX laufenden so genannten ftp-Daemon generiert werden können, zeigt, dass es sehr lange Teilsequenzen gibt, die sich oft wiederholen. Zum Beispiel beginnen viele Instantiierungen eines Prozesses mit einer identischen Teilsequenz mit einer Länge von 40 Prüfereignissen. Da bei dem beschriebenen Ansatz mit fest vorgegebener Sequenzlänge eine derartige Eigenschaft nicht berücksichtigt wird, wird jedes Ergebnis eines auf einem Ansatz mit fest vorgegebener Länge basierenden Verfahrens zur Eindringdetektion verzerrt, und bestimmte Vorfälle von Eindringen oder Missbrauch können nicht erkannt werden.
  • In dem Artikel „Intrusion Detection via System Call Traces" von A. P. Kosoresow und S. A. Hofmeyr in IEEE Software, September/Oktober 1997, S. 35 bis 42, wird gezeigt, dass man zum Modellieren des normalen Verhaltens eines Prozesses Muster unterschiedlicher Länge verwenden kann. Die in dieser Veröffentlichung vorgestellten Muster wurden jedoch mangels eines automatisierten Verfahrens manuell erzeugt. Es ist klar, dass sich eine solche manuelle Auswahl oder ein manuelles Erstellen der Muster für eine automatische Eindringdetektion, wie sie hier angestrebt wird, nicht eignet.
  • Einen völlig anderen Ansatz für ein musterorientiertes System zur Eindringdetektion legen Shieh et al. in der US-Patentschrift 5,278,901 offen. Es wird ein auf der Objektberechtigung und dem Informationsfluss basierendes System zur Eindringdetektion dargelegt, das heißt, dass das System nicht, wie oben beschrieben, die Abweichung von einem „typischen" Aktivitätsprofil verwendet. Der Ansatz von Shieh et al. ist im Gegensatz zu dem verhaltensbasierten Ansatz der vorliegenden Erfindung ein wissensbasiertes System zur Eindringdetektion. Außerdem befasst sich die Patentschrift von Shieh vorwiegend mit dem Problem der Erkennung von Verstößen gegen vorher definierte Verfahrensweisen der Zugangskontrolle, während die vorliegende Erfindung die Erkennung jeglicher Arten von Angriffen bezweckt. Durch die Komplexität der in der Patentschrift von Shieh gewählten Lösung wird dieser Ansatz jedoch für die Lösung der Probleme ungeeignet, die durch die vorliegende Erfindung beseitigt werden sollen.
  • Zusammenfassend ist zu sagen, dass eine Aufgabe der vorliegenden Erfindung darin besteht, ein einfaches und zuverlässiges Verfahren und eine Vorrichtung zur Eindringdetektion in ein Rechnersystem bereitzustellen, das auf Ereignismustern basiert und insbesondere die Erkennung von Abweichungen von einem „normalen" Prozessverhalten und somit die Erkennung von Angriffen gegen diesen Prozess betrifft. Eine weitere spezielle Aufgabe besteht darin, vorzugsweise automatisch so genannte „natürliche" Muster zur Beschreibung des Prozessverhaltens zu generieren und so eine sehr komprimierte Mustertabelle zu erzeugen. Eine weitere spezielle Aufgabe besteht darin, die Verwendung von hochwirksamen Mustervergleichsalgorithmen zu ermöglichen, insbesondere indem eine relativ kleine Mustervergleichstabelle erzeugt wird. Eine weitere spezielle Aufgabe besteht in der Erzeugung einer Mustertabelle mit sehr repräsentativen Mustern unabhängig von deren Länge. Eine andere spezielle Aufgabe besteht in der Erzeugung einer Mustertabelle mit weniger, aber längeren Einträgen im Vergleich zu den auf bekannten Lösungsansätzen basierenden Tabellen, und die dadurch die Erkennung von Angriffen verbessert. Eine weitere Aufgabe besteht im Definieren von Regeln, die festlegen, wann eine Abweichung vom normalen Verhalten deutlich genug ist, um einen Alarm auszulösen.
  • ÜBERBLICK ÜBER DIE ERFINDUNG
  • Es zeigt sich, dass die Idee der Prüfung von Sequenzen sehr wichtig ist, dass aber die Erstellung von Sequenzen mit fest vorgegebener Länge zu unbefriedigenden Ergebnissen führt, zumindest wenn diese Sequenzen eine bestimmte Mindestlänge nicht überschreiten. Daher verwendet die Erfindung einen neuen Ansatz, indem sie sich auf einen neuartigen Algorithmus konzentriert, und zwar den Teiresias-Algorithmus, der von I. Rigoutsos und A. Floratos in dem Artikel „Combinatorial Pattern Discovery in Biological Sequences – The TEIRESIAS Algorithm" in BioInformatics, Bd. 14, Nr. 1, 1998, S. 55 bis 67, beschrieben wird. Dieser Algorithmus ist auch Gegenstand der US-Patentschrift 6,108,666 von Florates et al.
  • Der Teiresias-Algorithmus, der zu anderen Zwecken entwickelt wurde und niemals für die Eindringdetektion in Betracht gezogen worden ist, dient der Suche nach Mustern, d. h. nach allen Teilsequenzen, die in einer Menge von Eingabesequenzen mindestens zweimal auftreten. Obwohl es außer dem Teiresias-Algorithmus noch andere Algorithmen zur Lösung des Problems der Erkennung aller Muster gibt, ist keiner so wirksam und schnell wie der Teiresias-Algorithmus. Generell sind die mittels des Teiresias-Algorithmus gewonnenen Ergebnisse allen durch die Ansätze nach dem Stand der Technik erhaltenen Ergebnissen weit überlegen.
  • Ein spezieller Vorteil besteht darin, dass man mittels des Teiresias-Algorithmus aus einer Menge von Eingabesequenzen die längsten Muster herausfinden kann. Dies ist wichtig, da eine Tabelle mit langen Mustern für einen bestimmten Prozess „repräsentativer" ist als eine Tabelle mit kurzen Mustern. Da längere Muster normalerweise mehr Kontextinformationen enthalten, sind diese für einen Prozess von größerer Bedeutung als kurze Muster. Andererseits sind kurze Muster nicht unbedingt eindeutig einem bestimmten Prozess zuzuordnen, sondern können auch in anderen Prozessen vorkommen. Es ist sogar möglich, dass kurze Muster Bestandteil eines Angriffs sind. Je länger ein Muster ist, desto geringer ist die Wahrscheinlichkeit, dass dieses Muster Bestandteil anderer Prozesse oder gar eines Angriffs ist. Es wurde daher festgestellt, dass man mittels des neuen Verfahrens gemäß der vorliegenden Erfindung Angriffe erkennen kann, die mit anderen Verfahren unerkannt blieben.
  • Ein weiterer Vorteil besteht offensichtlich darin, dass man durch eine kleine Mustertabelle leistungsfähige Mustervergleichsalgorithmen einsetzen und dennoch ziemlich schnell arbeiten kann. Beide Vorteile führen zu einer verbesserten Erkennung von Angriffen.
  • Zusammenfassend ist zu sagen, dass die vorliegende Erfindung ein Verfahren und ein System zur zuverlässigen Erkennung von Eindringmustern bereitstellt und somit die Wahrscheinlichkeit von Fehlalarmen verringert.
  • Das Verfahren und die Vorrichtung für ein System zur Eindringdetektion gemäß der Erfindung unter Verwendung des beschriebenen Ansatzes der variablen Musterlänge bei der Prüfung von Ereignismustern arbeiten in zwei Modi, und zwar in einem Trainingsmodus und einem Betriebsmodus.
  • Im Trainingsmodus wird das Verhalten eines Prozesses, allgemein gesagt, auf Basis der durch diesen Prozess generierten Systemereignisse definiert. Systemereignisse sind entweder die durch den Prozess ausgegebenen Systemaufrufe oder die für den Prozess generierten Prüfereignisse. Das Prozessmodell ist eine Mustertabelle, d. h. eine Tabelle von Sequenzen oder Teilsequenzen von Ereignissen, die für den untersuchten Prozess repräsentativ sind. Um ein vollständiges Bild des Prozesses zu erhalten, ist es wichtig, dass möglichst viele unterschiedliche Sequenzen generiert und analysiert werden.
  • In diesem Trainingsmodus werden aus den durch oder für den Prozess generierten Ereignissequenzen Muster unterschiedlicher Länge gewonnen. Alle Ereignisse eines bestimmten Typs, die vom Aufruf des Prozesses bis zu dessen Beendigung generiert werden, bilden eine Ereignissequenz. Unterschiedliche Prozessaufrufe können zu unterschiedlichen Ereignissequenzen führen. Muster sind Teilsequenzen der Ereignissequenzen; für den Prozess charakteristische Muster werden in einer Mustertabelle gespeichert. Die Mustertabelle stellt das Prozessmodell dar.
  • Im Betriebsmodus der vorliegenden Erfindung wird entschieden, ob die für den Prozess erzeugten Ereignisströme mit den Mustern in der Mustertabelle in Übereinstimmung gebracht werden können, welche einem normalen Prozessverhalten entspricht, oder ob es nicht übereinstimmende Ereignisse gibt. Nicht übereinstimmende Ereignisse stellen eine Abweichung vom normalen Verhalten dar und können somit ein Eindringen oder einen Missbrauch anzeigen, die als Angriff bezeichnet werden. Deutliche Abweichungen führen zur Auslösung eines Alarms.
  • Die vorliegende Erfindung ist, wie oben erwähnt, von Vorteil, da Muster generiert werden, die für die Beschreibung des Prozessverhaltens „natürlich" sind. Die Verwendung von Mustern unterschiedlicher Länge zur Erstellung der Menge repräsentativer Muster führt zu einer Mustertabelle mit weniger, aber längeren Einträgen als bei Tabellen, die man mittels anderer Ansätze erhält. Längere Muster enthalten, wie oben erläutert, mehr Kontextinformationen und sind daher für einen bestimmten Prozess repräsentativer als kurze Muster. Außerdem wird durch eine kleine Mustertabelle die Geschwindigkeit des Erkennungsprozesses erhöht. Es ist klar, dass bei der Suche nach einem Muster, das mit einem Teil einer vorgegebenen Sequenz übereinstimmt, eine kleine Mustergruppe schneller durchsucht wird als eine große. Daher kann der Mustererkennungsprozess durch kleine Mustertabellen beschleunigt werden.
  • Die Erfindung wird durch die Ansprüche 1 (Verfahren) und 10 (Vorrichtung) definiert.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • Die oben genannten sowie weitere Merkmale und Vorteile der Erfindung werden aus der folgenden ausführlicheren Beschreibung einer bevorzugten Ausführungsart der Erfindung klar, die durch die beiliegenden Zeichnungen veranschaulicht wird, in denen:
  • 1 die Komponenten eines Systems zur Eindringdetektion gemäß der Erfindung auf Basis der Analyse von Ereignismustern zeigt;
  • 2 beispielhafte Ausgabedaten der Ereignisaufzeichnungs-Komponente zeigt;
  • 3 beispielhafte Ausgabedaten der Prozessfilter-Komponente zeigt;
  • 4 beispielhafte Ausgabedaten der Umsetzungskomponente zeigt;
  • 5 beispielhafte Ausgabedaten der Reduzierungs- und Komprimierungskomponente zeigt;
  • 6 die durch den Teiresias-Algorithmus erkannten Muster aus einer Menge von beispielhaften Eingabezeichenfolgen zeigt;
  • 7 eine Darstellung des Musterreduzierungsalgorithmus ist, der auf die Menge der Beispielzeichenfolgen in 6 angewendet wird;
  • 8 eine Darstellung des Mustervergleichsalgorithmus für den Fall ist, dass die Eingabezeichenfolge erfasst werden kann, und
  • 9 eine Darstellung des Mustervergleichsalgorithmus für den Fall ist, dass die Eingabezeichenfolge nicht vollständig erfasst werden kann.
  • DETAILLIERTE BESCHREIBUNG DER ERFINDUNG
  • Im folgenden ersten Abschnitt werden die Komponenten des Systems zur Eindringdetektion beschrieben. In einem nachfolgenden zweiten Abschnitt werden die in ausgewählten Komponenten verwendeten Algorithmen erörtert.
  • 1. Das System zur Eindringdetektion und dessen Komponenten
  • 1 zeigt die Komponenten des Systems zur Eindringdetektion. Das System besteht aus zwei Teilen: einem Offline-Teil und einem Online-Teil. Der Offline-Teil stellt die Trainingsphase oder den Trainingsmodus dar, während der Online-Teil den echten Betriebsmodus darstellt. Im Trainingsmodus wird ein Modell des normalen Verhaltens des untersuchten Prozesses generiert. Im Betriebsmodus werden die Instantiierungen des durch das System zur Eindringdetektion beobachteten Prozesses mit dem Prozessmodell verglichen und bei Auffinden einer deutlichen Abweichung ein Alarm 136 ausgelöst.
  • Eine Prozessausführung 103 kann verschiedene Ereignisarten 104 auslösen. Für die vorliegende Erfindung kann eine der beiden folgenden Ereignisquellen dienen:
    • – C2-Prüfereignisse, die durch das Prüfsystem aufgezeichnet werden, welches in den meisten UNIX- oder anderen Betriebssystemen vorhanden ist.
    • – Systemaufrufe, die durch Programme wie z. B. strace, welche durch das Betriebssystem bereitgestellt werden, oder durch andere Systemdienstprogramme aufgezeichnet werden.
  • Es sei darauf hingewiesen, dass die beiden Quellen nicht untereinander austauschbar verwendet werden können. Es müssen entweder Prüfereignisse oder Systemaufrufe betrachtet werden. Im Folgenden kann sich der Begriff Ereignis im vorliegenden Dokument sowohl auf Prüfereignisse als auch auf Systemaufrufe beziehen.
  • Im Offline-Teil kann der Aufruf des Prozesses beeinflusst werden, um möglichst viele Ausführungspfade des Prozesses zu ermöglichen. Zu diesem Zweck werden die Funktionsnachweistests (functional verification test, FVT) benutzt, wie sie von Softwareentwicklern verwendet werden, um alle verschiedenen Unterbefehle zu testen, die durch einen Prozess ausgeführt werden können.
  • Andere Ansätze können darin bestehen, manuell eine Menge von Unterbefehlen zu definieren, die alle Ausführungspfade des Prozesses erfassen, oder einfach die Ereignisse des m einer realen Umgebung laufenden Prozesses aufzuzeichnen.
  • Die für einen Prozess generierten Ereignisse werden durch eine Ereignisaufzeichnungs-Komponente 105 aufgezeichnet. Die Ereignisaufzeichnungs-Komponente 105 kann in der Lage sein, nicht nur Ereignisse des untersuchten Prozesses, sondern auch anderer Prozesse im System aufzuzeichnen. Zum Beispiel kann das Prüfsystem nur in der Lage sein, die Prüfereignisse auf einer Systemebene, d. h. entweder für alle Prozesse oder für keinen Prozess, zu sammeln. Ein Ereignis wird durch mehrere Attribute beschrieben, z. B. durch den Prozessnamen, den Ereignisnamen, die Prozess-ID, die Elternprozess-ID oder die Benutzer-ID.
  • Die Ereignisaufzeichnungs-Komponente 105 leitet die Ereignisse zum Trainingssystem 102 weiter. Die Ereignisse werden in Form von Dreiersätzen 106 weitergeleitet, die den Prozessnamen, den Ereignisnamen und die Prozess-ID umfassen. 2 zeigt ein Beispiel der von der Ereignisaufzeichnungs-Komponente 105 an eine Filterkomponente 107 in dem Trainingssystem 102 gesendeten Ereignisse. Die Filterkomponente 107 fasst zuerst unter Wahrung der zeitlichen Reihenfolge der Ereignisse die zu demselben Prozess gehörenden Ereignisse zusammen. Alle zu demselben Prozess gehörenden Ereignisse werden als Ereignissequenz bezeichnet. Eine Ereignissequenz besteht aus einer eindeutigen Kennung und einer Ereignisliste. Die Ereignisse werden als Zweiersätze dargestellt, die den Prozess- und den Ereignisnamen umfassen. Für die weitere Verarbeitung werden nicht alle Ereignissequenzen benötigt. Nur diejenigen Sequenzen werden zu einer Umsetzungskomponente 109 weitergeleitet, die zum Analysieren des Verhaltens des untersuchten Prozesses benötigt werden.
  • 3 zeigt die Ereignisse von 2 nach Anwendung der Filterkomponente 107.
  • Zur weiteren internen Verarbeitung setzt die Umsetzungskomponente 109 die Ereignissequenzen in eine interne Datendarstellung um. Jedes Ereignis, d. h. der aus dem Prozess- und dem Ereignisnamen bestehende Zweiersatz, wird in ein einziges Zeichen eines Alphabets ∑ umgesetzt. Der Ausgabewert der Umsetzungskomponente 109 besteht aus Zeichenfolgen 110.
  • Die Umsetzung ist bijektiv, d. h. identische Ereignisse werden in dasselbe Zeichen umgesetzt, und ein Zeichen stellt nur die Umsetzung identischer Ereignisse dar. Die Umsetzungsregeln werden während der Verarbeitung erzeugt und in eine Umsetzungstabelle 136 gespeichert. 4 zeigt das Ergebnis der Umsetzung der Ereignissequenzen in Zeichenfolgen.
  • Die Zeichenfolgen können noch weiter reduziert werden. Eine Reduzierungs- und Komprimierungs-Komponente 111 führt zwei Aufgaben aus:
    • – Mehrfach vorkommende Zeichenfolgen werden entfernt.
    • – Mehrfach nacheinander vorkommende identische Zeichen werden zu einer kleineren Anzahl desselben Zeichens zusammengefasst.
  • Die erste Aufgabe führt zu einer Menge eindeutiger Zeichenfolgen. Mehrfach vorkommende Zeichenfolgen tragen zur weiteren Verarbeitung, wie später zu sehen ist, keinen Wert bei.
  • Es ist festzustellen, dass Teilsequenzen von N Ereignissen mit N > 1 ziemlich häufig vorkommen, wobei N nur geringen Schwankungen unterliegt. Ein Beispiel stellt die Sitzung ftp login dar, bei der der ftp-Daemon mehrere vom Prozess inetd übernommene Dateikennungen schließt. Da sich der Prozess inetd nicht immer in demselben Zustand befindet, kann die Anzahl seiner Dateikennungen schwanken. Folglich übernimmt der ftp-Deamon nicht immer dieselbe Anzahl von Dateikennungen. Das Schließen aller nicht erforderlichen Dateikennungen führt daher zu unterschiedlich vielen Dateischließungsoperationen.
  • Zum Komprimieren von Zeichen gibt es zwei mögliche Wege:
    • – Die aufeinanderfolgenden identischen Zeichen werden durch ein anderes, bisher noch nicht benutztes Zeichen ersetzt.
    • – Die N aufeinanderfolgenden identischen Zeichen werden zu M Zeichen mit 1 <= M <= N zusammengefasst.
  • Durch den ersten Ansatz wird die Anzahl der eindeutigen Ereignisse und möglicherweise auch die Anzahl der Muster erhöht. Da die Anzahl der Muster möglichst klein gehalten werden soll, ist der zweite Ansatz mit M = 1 gewählt worden. Die neu erzeugten Zeichenfolgen enthalten zwar weniger Semantik als die Originalzeichenfolgen, es ist jedoch noch kein Fall bekannt geworden, dass die Funktion des Systems zur Eindringdetektion durch die Zeichenzusammenfassung beeinträchtigt wird.
  • Die Ausgabewerte der Reduzierungs- und Komprimierungskomponente 111 sind eindeutige Zeichenfolgen 112, aus denen mehrfach nacheinander vorkommende identische Zeichen entfernt sind. 5 zeigt die Zeichenfolgen von 4 nach Verarbeitung durch die Reduzierungs- und Komprimierungskomponente 111.
  • Eine Mustererkennungs-Komponente 113 ermittelt diejenigen Muster, die das Prozessmodell darstellen und speichert sie in der Mustertabelle 135. Die zum Erstellen der Mustertabelle 135 verwendeten Algorithmen werden in den folgenden Abschnitten ausführlich erklärt.
  • Der Mustertabelle 135 kommt in dem System zur Eindringdetektion gemäß der Erfindung eine zentrale Rolle zu. Sie verbindet das Offline-System 102 mit dem Online-System 122.
  • Der Online-Teil besitzt etwa dieselben Komponenten wie der Offline-Teil. Ein Hauptunterschied besteht jedoch darin, dass sich der zu untersuchende Prozess nicht unter der Kontrolle des Eindringdetektionssystems befindet. Die Ereignisaufzeichnungs-Komponente 125 und die Prozessfilter-Komponente 127 im Online-System 122 sind dieselben wie im Offline-System. Die Umsetzungskomponente 129 unterscheidet sich insofern, als Prüfereignisse auf Basis der von einer Umsetzungstabelle 134 empfangenen Einträge umgesetzt werden. Wenn es ein Ereignis gibt, für das in der Umsetzungstabelle 129 kein Eintrag vorliegt, wird das Ereignis durch ein Platzhalterzeichen dargestellt. Für eine solche Ereignissequenz muss die Entscheidung gefällt werden, ob es sich um ein Anzeichen für einen Eindringversuch handelt. Deshalb ist hier keine Reduzierungskomponente (wie die Komponente 111 im Offline-Teil) vorhanden, welche, wie im Trainingssystem, Mehrfachsequenzen entfernt. Es ist nur eine Komprimierungskompontente 131 vorhanden.
  • Die Mustervergleichs-Komponente 133 empfängt ihre Eingabezeichenfolgen 132 von der Komprimierungskomponente 131. Durch Anwendung des im folgenden Abschnitt der vorliegenden Erfindung beschriebenen Algorithmus wird der Versuch unternommen, alle Eingabezeichenfolgen mit den Mustern der Mustertabelle 135 in Übereinstimmung zu bringen. Es können jedoch Zeichenfolgen mit nicht erfassten Zeichen übrig bleiben. Je nach der Anzahl aufeinanderfolgender nicht erfasster Zeichen wird die Entscheidung gefällt, ob es sich um ein Anzeichen eines Eindringens handelt und ob ein Alarm 136 ausgelöst werden soll.
  • Für den ftp-Daemon wurde ein Schwellenwert von 6 Zeichen ausgewählt, d. h. ein Alarm wird ausgelöst, wenn 7 nicht erfasste Zeichen aufeinander folgen.
  • 2. Algorithmen
  • In diesem Abschnitt werden ein Beispiel-Algorithmus zum Erstellen der Mustertabelle und ein Beispiel-Algorithmus zum Vergleichen mit dem Eingabedatenstrom beschrieben. Sie stellen die besten bisher bekannten Algorithmen dar. Es sind jedoch Abwandlungen dieser Algorithmen denkbar. Zum Beispiel kann der Algorithmus zum Erstellen der Mustertabelle die Muster anhand der Anzahl der passenden Zeichen am Anfang und am Ende einer Eingabezeichenfolge sortieren. Es sind andere Sortierkriterien wie beispielsweise die Gesamtzahl der zu einem Muster passenden Zeichen oder die Häufigkeit eines Musters denkbar.
  • 2.1 Terminologie und Notation
  • Gegeben sei eine endliche Menge von Zeichen ∑ = {c1, c2, ..., cn}. Die Menge ∑ wird als Alphabet bezeichnet. Eine Zeichenfolge von n mit n > 0 aufeinander folgenden identischen Zeichen c ∊ Σ wird mit cn bezeichnet. Das Glied c* bezeichnet eine Zeichenfolge von aufeinander folgenden identischen Zeichen der beliebigen Länge 1 mit 1 >= 0. Das Glied c+ bezeichnet eine Zeichenfolge aufeinander folgender identischer Zeichen der beliebigen Länge m mit m > 0. Eine beliebige Zeichenfolge der Länge n mit n > 0 wird mit {.}n bezeichnet. Mit {.}* wird eine beliebige Zeichenfolge der beliebigen Länge 1 mit 1 >= 0 und mit {.}+ eine beliebige Zeichenfolge der Länge m mit m > 0 bezeichnet.
  • Die Länge einer Zeichenfolge s wird durch |s| bezeichnet. Die Schreibweise C ∊ s bedeutet, dass das Zeichen in der Zeichenfolge s enthalten ist.
  • Gegeben sei eine Menge von Zeichenfolgen S = {s1, s2, ..., sn} aus dem Alphabet ∑. Eine Teilzeichenfolge p, die
    • – in der Menge von Zeichenfolgen S mindestens zweimal vorkommt, und
    • – eine Länge |p| von zwei oder mehr Zeichen aufweist, wird als Muster bezeichnet.
  • pn heißt, dass das Muster p n Mal mit n > 0 vorkommt. p* heißt, dass das Muster p 1 Mal mit 1 >= 0 vorkommt und p+ heißt, dass das Muster p m Mal mit m > 0 vorkommt.
  • Ein Muster p heißt maximal, wenn es kein Muster q gibt, für welches gilt:
    • – p ist eine Teilzeichenfolge von q mit |p| < |q|, und
    • – die Häufigkeit des Musters q ∊ S ist gleich oder größer als die Häufigkeit des Musters p ∊ S.
  • Ein Zeichen c ∊ s ist im Muster p enthalten, wenn c ∊ p und p eine Teilzeichenfolge von s ist.
  • Eine Zeichenfolge s ist in der Menge von Mustern P enthalten, wenn es für jedes Zeichen c, c ∊ s, ein Muster p, p ∊ P gibt, sodass c in p enthalten ist.
  • Eine Menge von Zeichenfolgen S ist in der Menge von Mustern P enthalten, wenn jede Zeichenfolge s, s ∊ S, in P enthalten ist. Man sagt auch, P enthält S.
  • Gegeben seien ein Muster p und eine Zeichenfolge s. Die Zeichenfolge s soll wie folgt zerlegt werden: S = p1{.}*pr l, r >= 0.
  • Es soll angenommen werden, dass die Zerlegung maximal ist, d. h. es gibt kein 1' und kein r', für welche gilt: l' + r' > l + r.
  • Der Ausdruck (l + r)·|p|, d. h. die mit der Musterlänge |p| multiplizierte Summe l + r wird als Randübereinstimmung zwischen Muster p und Zeichenfolge s bezeichnet und mCover(p,s) geschrieben. Die Randübereinstimmung zwischen einem Muster p und einer Menge von Zeichenfolgen S = {s1, s2, ..., sn} wird mCover(p,S) geschrieben und ist durch Σn i=1mCover(p,si). definiert.
  • Die Gesamtübereinstimmung zwischen einem Muster p und einer Menge von Zeichenfolgen S, also tCover(p,S), entspricht der Gesamtzahl der in dem Muster p enthaltenen Zeichen.
  • 2.2 Ermitteln der Menge der größten Muster mit variabler Länge
  • In einem ersten Schritt müssen alle in der Menge S der Eingabezeichenfolgen enthaltenen größten Muster ermittelt werden. Zu diesem Zweck wird der von I. Rigoutsos und A. Floratos in dem Artikel „Combinatorial Pattern Discovery in Biological Sequences – The TEIRESIAS Algorithm" in BioInformatics, Bd. 14, Nr. 1, 1998, S. 55 bis 67, beschriebene Teiresias-Algorithmus verwendet. Als Argument für den Teiresias- Algorithmus kann ein kleinstes Muster der Länge m festgelegt werden. Der Teiresias-Algorithmus findet dann die größten Muster, deren Länge gleich oder größer als diese vorgegebene kleinste Länge ist.
  • Teil a) der 6 zeigt eine beispielhafte Eingabemenge von 3 Zeichenfolgen, und Teil b) zeigt die Menge der durch den Teiresias-Algorithmus (für m = 2) gefundenen zugehörigen Muster. Für jedes Muster sind sowohl die Gesamthäufigkeit (erste Spalte) als auch die Anzahl der Zeichenfolgen (zweite Spalte) angegeben, in denen es vorkommt.
  • 2.3 Reduzieren der Menge von Mustern
  • Aus der Menge P der Muster, die sich aus allen in der Menge S von Zeichenfolgen gefundenen größten Mustern zusammensetzt, wird eine Untermenge R von Mustern mit R c P ausgewählt, die in S enthalten sind. Als Beispiel kann der folgende Algorithmus zum Erzeugen der reduzierten Menge R von Mustern verwendet werden.
    • 1. m sei die kleinste Musterlänge, die zum Erzeugen der Menge der größten Muster mit variabler Länge verwendet wurde. Jedes s mit s ∊ S ^ |s| < 2·m zu P hinzufügen und aus S entfernen.
    • 2. Wenn P = ⌀, alle s ∊ S zur reduzierten Menge R der Muster hinzufügen und den Vorgang verlassen.
    • 3. mCover(p,S) für jedes p ∊ P berechnen.
    • 4. Wenn es ein der Bedingung mCover(p,S) > 0 genügendes Muster p gibt, ein Muster r auswählen, für welches mCover (r, S) maximal ist, d. h. für das es kein Muster q gibt, für welches gilt: mCover (q,S) > mCover (r, S) oder mCover (q,S) = mCover (r, S) ^ |q| > |r|
    • 5. r zu der reduzierten Menge R der Muster hinzufügen und aus P entfernen.
    • 6. Zuerst alle übereinstimmenden Teilzeichenfolgen am Anfang und am Ende einer Zeichenfolge entfernen, d. h. Zeichenfolgen der Form s = r+ entfernen und Zeichenfolgen der Form s = r+s' oder s = r+s'' durch s' bzw. s'' ersetzen.
    • 7. Die übereinstimmenden Zeichenfolgen, die sich nicht am Anfang oder am Ende einer Zeichenfolge befinden, so lange entfernen, wie es ein s ∊ S, s = s'r+s'' = {.}v{.}*r+{.}*{.}w gibt, wobei m die kleinste Musterlänge und v,w > 0 ist, und s durch die beiden Zeichenfolgen s' und s'' ersetzen. v und w bezeichnen die kleinste Länge der neu entstehenden Zeichenfolgen s' bzw. s''. Wenn man diese gleich m setzt, wird dadurch bewirkt, dass alle Muster eine kleinste Länge m besitzen. Es sind jedoch unterschiedliche Einstellungen möglich.
    • 8. Wenn eine der Zeichenfolgen s, die soeben zu S hinzugefügt wurde, eine Länge |s| < 2·m hat, wobei m die kleinste Musterlänge ist, wird s aus der Menge S der Zeichenfolgen entfernt und zur Menge P der Muster hinzugefügt.
    • 9. Weiter zu Schritt 2, wenn S ≠ ⌀ ist.
  • 7 veranschaulicht den Algorithmus zur Musterreduzierung, der auf die in 6 eingeführte Menge von Beispielzeichenfolgen angewendet wurde. Für jeden Reduzierungsschritt sind die Menge der Zeichenfolgen, die Menge der Muster und die Menge der reduzierten Muster gezeigt. Für jedes Muster in der Menge der Muster ist der Wert mCover angegeben. Das Muster mit dem höchsten Wert mCover wird zum Satz der reduzierten Muster verschoben und die übereinstimmenden Teilzeichenfolgen werden aus der Menge der Zeichenfolgen entfernt. In diesem Beispiel werden nicht alle Muster benötigt, um alle Zeichenfolgen zu erfassen.
  • Im Beispiel des ftp-Daemons ermittelt der Teiresias-Algorithmus etwa 600 größte Muster variabler Länge. Nach Anwendung des Reduzierungsalgorithmus bleiben nur noch etwa 50 Muster übrig.
  • 2.4 Mustervergleich
  • Es wird ein Algorithmus zum Vergleichen von Beispielmustern beschrieben. Der Algorithmus versucht den Eingabedatenstrom durch Aneinanderreihen von Mustern zu erkennen, d. h. die Muster werden nacheinander angeordnet. Eine Abwandlung bestünde darin, überlappende Muster zuzulassen.
  • An bestimmten Punkten des Mustervergleichsprozesses können mehrere Muster mit dem Eingabedatenstrom übereinstimmen, sodass die Entscheidung gefällt werden muss, welches Muster ausgewählt werden soll. Heuristischerweise wird ein Muster ausgewählt, wenn eine Folge von d Mustern mit d > 0 gefunden werden kann, die unmittelbar nach dem betrachteten Muster mit dem Eingabedatenstrom übereinstimmt.
    • 1. Den Zähler aufeinander folgender nicht erfasster Zeichen u auf 0 setzen.
    • 2. Warten, bis man im Eingabedatenstrom mindestens k = d·|pmittel| Zeichen findet, wobei d der in der Einführung in diesen Algorithmus erklärte Parameter und |pmittel| die mittlere Länge aller Muster p ∊ P ist, oder bis das Ende einer Eingabedatensequenz erreicht wurde.
    • 3. Suchen nach einem Muster p ∊ P, das dem Anfang des Eingabedatenstroms T entspricht. Wenn kein Muster gefunden werden kann, zu Schritt 6 weitergehen.
    • 4 . Muster q1, q2, ..., qa mit d > 0 finden, sodass die Zeichenfolge t = pg1g2 ...qd den Anfang des Eingabedatenstroms enthält. t = pg1q2 ...qe setzen, wenn es e Muster q1, q2, ..., qe mit 0 < e < d gibt, die die gesamte Eingabedatensequenz enthalten.
    • (a) Eingabedatensequenz entfernen und zu Schritt 1 gehen, wenn t mit der gesamten Eingabedatensequenz übereinstimmt.
    • (b) Das Muster p aus dem Eingabedatenstrom entfernen und zu Schritt 1 gehen, wenn d Muster gefunden werden können, die den Eingabedatenstrom enthalten.
    • 5. Alle Musterkombinationen ermitteln, die den Anfang des Eingabedatenstroms enthalten. Diejenige Musterkombination auswählen, welche die längste Zeichenfolge enthält, aus dem Eingabedatenstrom entfernen und zu Schritt 1 gehen.
    • 6. Ein Zeichen überspringen und u um 1 erhöhen.
    • 7. Alarm auslösen, wenn u = n + 1 ist, wobei n der Schwellenwert für die Anzahl der aufeinander folgenden nicht enthaltenen Zeichen ist.
    • 8. Zu Schritt 2 gehen.
  • Die 8 und 9 sind zwei Darstellungen des Mustervergleichsalgorithmus, und zwar eine für den Fall der vollständig enthaltenen Zeichenfolge und eine für den Fall der teilweise enthaltenen Zeichenfolge.
  • Der Mustervergleichsalgorithmus verarbeitet die in den 8 und 9 oben enthaltene Mustertabelle. In 8 findet der Vergleichsalgorithmus zuerst das Muster „ABC", das mit dem Anfang der Beispielzeichenfolge übereinstimmt. Bevor dieses Muster als gültige Übereinstimmung anerkannt wird, muss „ABC" durch Auffinden von d = 3 Mustern bewertet werden, die mit dem Rest „ABCDXYZGHI" der Zeichenfolge übereinstimmen. Da drei solcher Muster gefunden werden können, und zwar „ABCD", „XYZ" und „GHI", wird das Muster „ABC" anerkannt und aus der Beispielzeichenfolge entfernt. Die Verarbeitung fährt mit der Zeichenfolge „ABCDXYZGHI" fort.
  • In 9 geht es um dieselbe Mustertabelle wie in 8. Allerdings unterscheidet sich die zu vergleichende Beispielzeichenfolge hier etwas. Wiederum wird das Muster „ABC" als potentielles Muster ausgewählt, das mit dem Anfang der Beispielzeichenfolge übereinstimmt. Jedoch können keine d = 3 Muster gefunden werden, die mit dem Rest „ABCDKMWHF" der Zeichenfolge übereinstimmen. Das bedeutet, dass für die Übereinstimmung mit der Beispielzeichenfolge ein anderes Muster probiert werden muss. Da es kein anderes derartiges Muster gibt, muss nach der Mustersequenz gesucht werden, die mit dem längsten Teil der Beispielzeichenfolge übereinstimmt. Da die beiden Muster „ABC" und „ABCD" mit der längsten Teilsequenz übereinstimmen, werden sie ausgewählt. Die Zeichen „KMW", deren Übereinstimmung nicht festgestellt werden kann, werden übersprungen. Die Verarbeitung fährt mit der Zeichenfolge „HF" fort.
  • Es wurde ein musterorientiertes, verhaltensbasiertes Modell zur Eindringdetektion für unterschiedliche Längen definiert. Der Hauptvorteil dieses erfindungsgemäßen Modells besteht darin, dass es eine Art „natürlicher" Muster oder Signaturen des zu überwachenden Prozesses generiert, dessen Muster das „normale" Verhalten sehr gut darstellen. Somit können Abweichungen, welche ein Eindringen oder eine missbräuchliche Verwendung anzeigen, leichter als bei bisher bekannten Verfahren erkannt werden.
  • Obwohl die vorliegende Erfindung insbesondere unter Bezug auf eine spezielle Ausführungsart gezeigt wurde, ist dem Fachmann klar, dass sie an die jeweilige Umgebung angepasst werden kann, wie zum Beispiel zur Erkennung unerlaubter Transaktionen bei Banken, von Viren in einem Rechnernetz, des unberechtigten Zutritts zu Gebäuden mit Zugangsbeschränkungen oder des unerlaubten Datenaustauschs zwischen Datenbanken, um nur einige zu nennen.

Claims (15)

  1. Verfahren zur Detektion von Eindringversuchen in einem Rechner oder einem Rechnersystem, wobei das Verfahren eine Kombination der folgenden Modi und Schritte umfasst: – einen Trainingsmodus, in dem eine Tabelle charakteristischer, den Prozess darstellender Muster, die das normale Verhalten eines Modellprozesses in dem Rechner oder dem Rechnersystem definieren, durch Ausführen der folgenden Schritte erstellt wird: – Erstellen einer ersten Ereignissequenz durch Filtern eines ersten durch den Modellprozess generierten Ereignisdatenstroms, – Verwenden des so genannten Teiresias-Algorithmus zum Extrahieren von Ereignissequenzmustern aus der ersten Ereignissequenz, wobei die Muster den Modellprozess darstellen, – Speichern der den Prozess darstellenden Muster; und – einen Betriebsmodus, in dem aus einem realen Prozess charakteristische Muster durch Ausführen der folgenden Schritte extrahiert werden: – Erstellen einer zweiten Ereignissequenz durch Filtern eines durch den realen Prozess generierten Ereignisdatenstroms, – Vergleichen der ersten Ereignissequenz mit den gespeicherten, den Prozess darstellenden Mustern und – Anzeigen des Ergebnisses des Vergleichsschrittes.
  2. Verfahren zur Eindringdetektion nach Anspruch 1, wobei – die erste Ereignissequenz im Trainingsmodus umgesetzt wird und die bei der Umsetzung angewendeten Regeln gespeichert werden, – die zweite Ereignissequenz im Betriebsmodus unter Verwendung der gespeicherten Umsetzungsregeln umgesetzt wird.
  3. Verfahren zur Eindringdetektion nach Anspruch 2, wobei die Umsetzung eine dynamische Umsetzung ist und während der Verarbeitung stattfindet.
  4. Verfahren zur Eindringdetektion nach einem der Ansprüche 1 bis 3, wobei – die erste Ereignissequenz im Trainingsmodus nach einem vorgegebenen Satz von Komprimierungsregeln komprimiert wird, – die zweite Ereignissequenz im Betriebsmodus unter Verwendung des vorgegebenen Satzes von Komprimierungsregeln komprimiert wird.
  5. Verfahren zur Eindringdetektion nach einem oder mehreren der vorangehenden Ansprüche, wobei – ein durch einen oder beide Prozesse generierter Ereignisdatenstrom aufgezeichnet und – der aufgezeichnete Ereignisdatenstrom gefiltert wird, um die erste und/oder zweite Ereignissequenz zu erstellen.
  6. Verfahren zur Eindringdetektion nach einem oder mehreren der vorangehenden Ansprüche, wobei die den Prozess darstellenden Muster der ersten Ereignissequenzen Muster variabler Länge, insbesondere Muster maximaler Längen, enthalten.
  7. Verfahren zur Eindringdetektion nach einem oder mehreren der vorangehenden Ansprüche, welches im Trainingsmodus ferner einen Reduzierungsschritt enthält, durch den alle doppelten Muster aus der erhaltenen Ereignissequenz entfernt werden.
  8. Verfahren zur Eindringdetektion nach einem oder mehreren der vorangehenden Ansprüche, wobei der Trainingsmodus unter Kontrolle des Systems zur Eindringdetektion erfolgt.
  9. Verfahren zur Eindringdetektion nach einem oder mehreren der Ansprüche 2 bis 7, wobei alle oder einige der Verfahrensschritte in den folgenden Sequenzen ausgeführt werden, und zwar – im Trainingsmodus: 1. Aufzeichnen des Ereignisses, 2. Filtern des Prozesses, 3. Umsetzen und Speichern der Umsetzungsregeln, 4. Reduzieren und Komprimieren, 5. Extrahieren und Speichern der Muster; und – im Betriebsmodus: 1. Aufzeichnen des Ereignisses, 2. Filtern des Prozesses, 3. Umsetzen auf Basis der gespeicherten Umsetzungsregeln, 4. Komprimieren, 5. Vergleichen der Muster mit den gespeicherten Mustern.
  10. Vorrichtung zur Detektion von Eindringversuchen in einem Rechner oder einem Rechnersystem, wobei die Vorrichtung eine Kombination der folgenden Komponenten umfasst: – eine erste Filterkomponente (107) zum Filtern eines durch einen Modellprozess (103) generierten ersten Ereignisdatenstroms in einem Zweig des Trainingsmodus und zum Erstellen einer ersten Ereignissequenz (108), – eine Musterextrahierungs-Komponente (113) zum Extrahieren von Ereigniss-equenzmustern aus der ersten Ereignissequenz unter Verwendung des so genannten Teiresias-Algorithmus, wobei die Muster den Modellprozess darstellen, – eine Mustertabellen-Komponente (135) zum Speichern der den Prozess darstellenden extrahierten Muster, welche das normale Verhalten des Modellprozesses definieren, – eine zweite Filterkomponente (127) zum Erstellen einer zweiten Ereignissequenz in einem Zweig des Betriebsmodus durch Filtern eines durch einen realen Prozess (123) generierten Ereignisdatenstroms, – eine Mustervergleichs-Komponente (133) zum Vergleichen der zweiten Ereignissequenz mit den in der Mustertabellen-Komponente (135) gespeicherten, den Prozess darstellenden Muster, und – eine Anzeigekomponente (136) zum Anzeigen des Ausgabewertes der Vergleichskomponente (133).
  11. Vorrichtung zur Eindringdetektion nach Anspruch 10, die ferner Folgendes umfasst: – eine erste Umsetzungskomponente (109), die im Zweig des Trainingsmodus die erste Ereignissequenz umsetzt, – eine Umsetzungstabelle (134) zum Speichern der beim Umsetzen angewendeten Umsetzungsregeln, – eine zweite Umsetzungskomponente (129), die im Zweig des Betriebsmodus die zweite Ereignisdatenfolge unter Anwendung der in der Umsetzungstabelle (134) gespeicherten Umsetzungsregeln umsetzt.
  12. Vorrichtung zur Eindringdetektion nach einem der Ansprüche 10 und 11, wobei die Vorrichtung ferner Folgendes umfasst: – eine erste Komprimierungskomponente (111), die im Zweig des Trainingsmodus die erste Ereignissequenz gemäß einem vorgegebenen Satz von Komprimierungsregeln komprimiert, und – eine zweite Komprimierungskomponente (131), die im Zweig des Betriebsmodus die zweite Ereignissequenz unter Anwendung eines vorgegebenen Satzes von Komprimierungsregeln komprimiert.
  13. Vorrichtung zur Eindringdetektion nach Anspruch 12, wobei die Vorrichtung ferner eine Reduzierungskomponente zum Entfernen doppelter Muster aus der im Zweig des Trainingsmodus erhaltenen Ereignissequenz und insbesondere eine Reduzierungskomponente in Kombination mit der ersten Komprimierungskomponente (111) umfasst.
  14. Vorrichtung zur Eindringdetektion nach einem oder mehreren der Ansprüche 10 bis 13, wobei alle oder einige der Komponenten in den folgenden Arbeitssequenzen angeordnet sind: – im Zweig des Trainingsmodus: 1. Ereignisaufzeichnungs-Komponente (105), 2. Prozessfilter-Komponente (107), 3. Umsetzungskomponente (109) und Umsetzungstabelle (134), 4. Reduzierungs- und Komprimierungskomponente (111), 5. Musterextrahierungs-Komponente (113) und Mustertabelle (135); und – im Zweig des Betriebsmodus: 1. Ereignisaufzeichnungs-Komponente (125), 2. Prozessfilter-Komponente (127), 3. mit der Umsetzungstabelle (134) verbundene Umsetzungskomponente (129) 4. Komprimierungskomponente (131), 5. mit der Mustertabelle (135) verbundene Mustervergleichs-Komponente (133).
  15. Vorrichtung zur Eindringdetektion nach einem oder mehreren der vorangehenden Ansprüche, wobei die Komponenten in der Vorrichtung so angeordnet sind, dass diese zur Vermeidung von Duplikaten alternativ entweder im Zweig des Trainingsmodus oder im Zweig des Betriebsmodus eingesetzt werden können.
DE1998617176 1998-09-09 1998-09-09 Verfahren und Vorrichtung zur Eindringdetektion in Rechnern und Rechnernetzen Expired - Lifetime DE69817176T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
EP19980117083 EP0985995B1 (de) 1998-09-09 1998-09-09 Verfahren und Vorrichtung zur Eindringdetektion in Rechnern und Rechnernetzen

Publications (2)

Publication Number Publication Date
DE69817176D1 DE69817176D1 (de) 2003-09-18
DE69817176T2 true DE69817176T2 (de) 2004-06-24

Family

ID=8232601

Family Applications (1)

Application Number Title Priority Date Filing Date
DE1998617176 Expired - Lifetime DE69817176T2 (de) 1998-09-09 1998-09-09 Verfahren und Vorrichtung zur Eindringdetektion in Rechnern und Rechnernetzen

Country Status (2)

Country Link
EP (1) EP0985995B1 (de)
DE (1) DE69817176T2 (de)

Families Citing this family (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2164700A (en) 1998-12-09 2000-06-26 Network Ice Corporation A method and apparatus for providing network and computer system security
US7346929B1 (en) 1999-07-29 2008-03-18 International Business Machines Corporation Method and apparatus for auditing network security
JP4434465B2 (ja) * 1999-11-16 2010-03-17 キヤノン株式会社 通信装置及び方法並びに記憶媒体
US8006243B2 (en) 1999-12-07 2011-08-23 International Business Machines Corporation Method and apparatus for remote installation of network drivers and software
US7007174B2 (en) * 2000-04-26 2006-02-28 Infoglide Corporation System and method for determining user identity fraud using similarity searching
US20010054153A1 (en) * 2000-04-26 2001-12-20 Wheeler David B. System and method for determining user identity fraud using similarity searching
US7921459B2 (en) 2000-04-28 2011-04-05 International Business Machines Corporation System and method for managing security events on a network
US7574740B1 (en) * 2000-04-28 2009-08-11 International Business Machines Corporation Method and system for intrusion detection in a computer network
EP1277326A2 (de) * 2000-04-28 2003-01-22 Internet Security Systems, Inc. Verfahren und vorrichtung zur computersicherheitsinformationverwaltung
US9027121B2 (en) 2000-10-10 2015-05-05 International Business Machines Corporation Method and system for creating a record for one or more computer security incidents
AU2002244083A1 (en) 2001-01-31 2002-08-12 Timothy David Dodd Method and system for calculating risk in association with a security audit of a computer network
US20060265746A1 (en) 2001-04-27 2006-11-23 Internet Security Systems, Inc. Method and system for managing computer security information
US7036148B2 (en) 2001-05-08 2006-04-25 International Business Machines Corporation Method of operating an intrusion detection system according to a set of business rules
KR100439950B1 (ko) * 2001-05-22 2004-07-12 (주)인젠 네트워크 침입탐지 시스템
US7657419B2 (en) 2001-06-19 2010-02-02 International Business Machines Corporation Analytical virtual machine
US7571480B2 (en) 2001-08-16 2009-08-04 International Business Machines Corporation Presentation of correlated events as situation classes
US7278160B2 (en) 2001-08-16 2007-10-02 International Business Machines Corporation Presentation of correlated events as situation classes
US7039953B2 (en) 2001-08-30 2006-05-02 International Business Machines Corporation Hierarchical correlation of intrusion detection events
WO2003029934A1 (en) * 2001-09-28 2003-04-10 British Telecommunications Public Limited Company Agent-based intrusion detection system
WO2003058451A1 (en) 2002-01-04 2003-07-17 Internet Security Systems, Inc. System and method for the managed security control of processes on a computer system
CN1643876B (zh) * 2002-03-29 2010-09-29 思科技术公司 用于降低网络入侵检测系统的误报率的方法和系统
GB0208711D0 (en) * 2002-04-16 2002-05-29 Neural Technologies Ltd A hierarchical system for analysing data streams
US7017186B2 (en) 2002-07-30 2006-03-21 Steelcloud, Inc. Intrusion detection system using self-organizing clusters
US8260961B1 (en) 2002-10-01 2012-09-04 Trustwave Holdings, Inc. Logical / physical address state lifecycle management
US7469418B1 (en) 2002-10-01 2008-12-23 Mirage Networks, Inc. Deterring network incursion
US8819285B1 (en) 2002-10-01 2014-08-26 Trustwave Holdings, Inc. System and method for managing network communications
US7913303B1 (en) 2003-01-21 2011-03-22 International Business Machines Corporation Method and system for dynamically protecting a computer system from attack
US7281270B2 (en) 2003-04-01 2007-10-09 Lockheed Martin Corporation Attack impact prediction system
US7805762B2 (en) 2003-10-15 2010-09-28 Cisco Technology, Inc. Method and system for reducing the false alarm rate of network intrusion detection systems
US7657938B2 (en) 2003-10-28 2010-02-02 International Business Machines Corporation Method and system for protecting computer networks by altering unwanted network data traffic
FR2864392A1 (fr) * 2003-12-17 2005-06-24 France Telecom Procede de classification automatique d'un ensemble d'alertes issues de sondes de detection d'intrusions d'un systeme de securite d'information
WO2005059720A1 (en) * 2003-12-17 2005-06-30 Telecom Italia S.P.A. Method and apparatus for monitoring operation of processing systems, related network and computer program product therefor
US8185955B2 (en) 2004-11-26 2012-05-22 Telecom Italia S.P.A. Intrusion detection method and system, related network and computer program product therefor
US7814548B2 (en) 2005-09-13 2010-10-12 Honeywell International Inc. Instance based learning framework for effective behavior profiling and anomaly intrusion detection
GB0816556D0 (en) 2008-09-10 2008-10-15 Univ Napier Improvements in or relating to digital forensics
US8918876B2 (en) 2009-04-30 2014-12-23 Telefonaktiebolaget L M Ericsson (Publ) Deviating behaviour of a user terminal
CN101976313B (zh) * 2010-09-19 2012-09-26 四川大学 基于频繁子图挖掘的异常入侵检测方法
JP5868514B2 (ja) * 2012-09-19 2016-02-24 三菱電機株式会社 情報処理装置及び情報処理方法及びプログラム
GB201504612D0 (en) 2015-03-18 2015-05-06 Inquisitive Systems Ltd Forensic analysis
US10516685B2 (en) 2015-07-30 2019-12-24 Nippon Telegraph And Telephone Corporation Analysis method, analysis device and analysis program
JP5933797B1 (ja) * 2015-10-07 2016-06-15 株式会社ソリトンシステムズ ログ情報生成装置及びプログラム並びにログ情報抽出装置及びプログラム
GB201708671D0 (en) 2017-05-31 2017-07-12 Inquisitive Systems Ltd Forensic analysis

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2706652B1 (fr) * 1993-06-09 1995-08-18 Alsthom Cge Alcatel Dispositif de détection d'intrusions et d'usagers suspects pour ensemble informatique et système de sécurité comportant un tel dispositif.

Also Published As

Publication number Publication date
EP0985995B1 (de) 2003-08-13
EP0985995A1 (de) 2000-03-15
DE69817176D1 (de) 2003-09-18

Similar Documents

Publication Publication Date Title
DE69817176T2 (de) Verfahren und Vorrichtung zur Eindringdetektion in Rechnern und Rechnernetzen
Lichodzijewski et al. Host-based intrusion detection using self-organizing maps
DE112012002624B4 (de) Regex-Kompilierer
DE102005010923B4 (de) System, computerverwendbares Medium und Verfahren zum Überwachen einer Netzwerkaktivität
DE112011103273B4 (de) Verfahren, Computerprogrammprodukt und Vorrichtung zur Weitergabe von Identitäten über Anwendungsebenen unter Verwendung von kontextabhängiger Zuordnung und gesetzten Werten
DE112019001121B4 (de) Auf einem computer implementiertes verfahren zum identifizieren von malware und system hierfür
US6889218B1 (en) Anomaly detection method
DE112020001038T5 (de) Detektion von phishing-kampagnen
WO2000013371A1 (de) System und verfahren zur ablaufkontrolle bei netzwerk-anwendungen
DE112010002445T5 (de) Identifizierung von Bots
DE112016002806T5 (de) Eindringdetektion auf Graphenbasis unter Verwendung von Prozessspuren
WO2016008778A1 (de) Verfahren zum erkennen eines angriffs in einem computernetzwerk
DE102017106016A1 (de) System und Verfahren zur Erkennung von Befehlssequenzen von Interesse
DE112021004808T5 (de) Erkennen von malware durch analyse verteilter telemetriedaten
EP2362321A1 (de) Verfahren und System zum Erkennen einer Schadsoftware
DE69919560T2 (de) Verfahren und system zur vorbeugung von unerwüschten betätigungen von ausführbaren objekten
AT522281B1 (de) Verfahren zur Charakterisierung des Betriebszustands eines Computersystems
EP3961447B1 (de) Verfahren zur detektion von anomalen betriebszuständen eines computersystems
WO2020016340A1 (de) Penetrationstestverfahren, computerprogramm und vorrichtung zur datenverarbeitung
EP2302554A2 (de) Verfahren zur Kennzeichnung eines in einem Computerspeichersystem enthaltenen Computerprogrammabschnitts
WO2001090932A2 (de) Verfahren und vorrichtung zum abblocken von aus einem netzwerk anforderbaren daten
EP2164021A1 (de) Verfahren zum Erkennen eines unerwünschten Zugriffs und Netz-Servereinrichtung
EP2899920B1 (de) System und Verfahren zur Filterung und Speicherung von Daten
Ohaeri et al. Digital Forensic Process Model for Information System and Network Security Management
EP4002172B1 (de) Verfahren zur klassifizierung von anomalen betriebszuständen eines computernetzwerks

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8320 Willingness to grant licences declared (paragraph 23)
8328 Change in the person/name/address of the agent

Representative=s name: DUSCHER, R., DIPL.-PHYS. DR.RER.NAT., PAT.-ANW., 7