Intrusion-Detection-System und Intrusion-Prevention-System im Überblick
Der beste Weg, um ein Netzwerk oder ein einzelnes Computersystem zu schützen, besteht darin, Angriffe frühzeitig zu erkennen und abzuwehren, noch bevor diese Schaden verursachen können. Viele bauen zu diesem Zweck auf sogenannte Intrusion-Detection-Systeme (IDS) oder die vielseitigeren Intrusion-Prevention-Systeme. Worum es sich bei diesen beiden sehr ähnlichen Sicherheitskomponenten handelt und wie genau sie funktionieren, erfahren Sie in diesem Ratgeber.
Was ist ein Intrusion-Detection-System?
Ein Intrusion-Detection-System (IDS), oder zu Deutsch Angriffserkennungssystem, dient dazu, Angriffe gegen ein Computersystem oder ein Netzwerk frühzeitig zu erkennen. Die notwendige IDS-Software kann entweder auf dem zu überwachenden System oder auf einem separaten Gerät installiert werden. Viele Anbieter vertreiben vorkonfigurierte IDS-Software, die allerdings relativ teuer ist. Intrusion-Detection-Systeme überwachen und analysieren alle Netzwerkaktivitäten, um ungewöhnlichen Datenverkehr aufzuspüren und den Nutzer in einem entsprechenden Fall darüber zu informieren. Dadurch hat dieser die Möglichkeit, auf die Zugriffsversuche des Eindringlings zu reagieren und den Angriff zu unterbinden. Grundsätzlich unterscheidet man dabei zwischen hostbasierten und netzwerkbasierten Angriffserkennungsmethoden.
Hostbasierte Intrusion-Detection-Systeme
Die ersten hostbasierten IDS setzte man bereits in den 80er-Jahren ein, um zentralisierte Rechnerstrukturen zu schützen. Das Erkennungssystem wurde zu diesem Zweck einfach auf dem Zentralrechner installiert, über den die verschiedenen angebundenen Terminals liefen, und überwachte dann auf diesem Host den Datenverkehr, indem es Log-Dateien, Kernel- und andere Systemdaten durchforstete. Mit der Entwicklung der Terminals zu eigenständigen Workstations mit eigener Rechenleistung war man gezwungen, die hostbasierte Technik anzupassen. Um die einzelnen, nun eigenständig arbeitenden Systeme ebenfalls zu überprüfen, installierte man auf selbigen spezielle Module, auch Monitoring-Agenten genannt. Diese filterten den Datenverkehr bzw. die relevanten Audit-Daten vor und sendeten die Ergebnisse an den zentralen Server weiter, der seinerseits für die Angriffserkennung zuständig war. Aufgrund der Konzeptionierung spricht man auch von verteilten Intrusion-Detection-Systemen.
Netzbasierte Intrusion-Detection-Systeme
Die zunehmende Vernetzung lokaler Netzwerke mit dem Internet erforderte eine erneute Weiterentwicklung der IDS-Technik. Einerseits war der hostbasierte Ansatz nicht für die flexiblen und komplexen Datenströme des Internets geeignet. Andererseits setzten Angriffe fortan keine physische Nähe zum Zielsystem mehr voraus, sondern konnten von entfernten über das Netz verteilten Clients ausgeführt werden. Da unerlaubte Zugriffe aus dem Internet notwendigerweise über das TCP/IP bzw. UDP-Protokoll stattfinden, überprüften die netzbasierten Systeme nun nicht mehr die Audit-Daten, sondern die IP-Pakete, weshalb sie eng an die eingesetzte Firewall gekoppelt waren. Damit stellten sie aber auch eine zentrale Überwachungseinheit dar, die nicht auf den Schutz eines einzelnen Systems beschränkt war, sondern den gesamten Datenverkehr des Netzwerkes überblicken konnte.
So arbeiten moderne Angriffserkennungssysteme
Heutige Intrusion-Detection-Systeme verbinden in der Regel beide Ansätze und gewährleisten auf diese Weise eine noch höhere Erkennungsrate von Angriffen. Diese hybriden Systeme zeichnen sich durch ein zentrales Managementsystem aus, das sowohl durch netzbasierte als auch durch hostbasierte Software mit den entsprechenden Informationen versorgt wird. Drei elementare Komponenten sind am Erkennungsprozess beteiligt:
Datenmonitoring
Der Datenmonitor hat die Aufgabe, alle relevanten Daten zu sammeln und vorzufiltern, die benötigt werden, um Eindringlinge zu enttarnen. Dabei handelt es sich um die bereits angesprochenen Audit-Daten wie Log-Dateien von Rechnersystemen und Sicherheitsanwendungen sowie Systeminformationen wie z. B. die CPU-Auslastung, die Anzahl aktiver Netzverbindungen oder die Anzahl wiederholter Log-in-Versuche. Außerdem verwertet der Datenmonitor im hybriden Intrusion-Detection-System natürlich auch die Informationen über die TCP/IP-Verbindungen wie Quell- und Zieladresse und weitere Eigenschaften der versendeten und erhaltenen Datenpakete, die er vom netzbasierten IDS-Sensor erhält.
Analyse
Die gesammelte und vorgefilterte Datenflut sendet der Datenmonitor an den sogenannten Analyzer. Dieser muss die erhaltenen Informationen in Echtzeit bearbeiten und auswerten – andernfalls wäre eine Vereitelung von Einbruchsversuchen nicht zu bewerkstelligen. Der Analysevorgang stellt konsequenterweise relativ hohe Ansprüche an die zugrundeliegende Hardware (CPU und Arbeitsspeicher). Vor allem in großen Unternehmensnetzwerken ist die passende Skalierung dieser IDS-Komponente daher eine der kompliziertesten, aber auch wichtigsten Aufgaben, um die Funktionalität des Angriffserkennungssystems zu gewährleisten. Zur Bewertung der Daten kann ein Analyzer zwei verschiedene Methoden heranziehen:
- Bei der Misuse Detection (dt. Missbrauchserkennung) versucht der Analyzer in den erhaltenen Daten bereits bekannte Angriffsmuster, sogenannte Signaturen, zu erkennen. Diese sind in einer separaten Datenbank hinterlegt, die regelmäßig aktualisiert wird. Zu jeder Signatur übermitteln die Datenbankeinträge auch Angaben über die Schwere des Angriffs. Während bekannte Angriffsmuster auf diese Weise eindeutig erkannt und bewertet werden können, bleibt ein nicht in der Signaturdatenbank hinterlegtes Zugriffsmuster vor dieser Aufspürungsmethode verborgen.
- Die Anomaly Detection (dt. Anomalie-Erkennung) basiert auf einem anderen Prinzip: Dieses Analyseverfahren geht davon aus, dass ein unbefugter Zugriff ein anormales Systemverhalten verursacht und von zuvor definierten Normwerten abweicht. So kann der Analyzer beispielsweise so konfiguriert sein, dass er Alarm schlägt, wenn die CPU-Auslastung oder die Seitenzugriffsrate einen bestimmten Wert überschreiten (statischer Ansatz). Alternativ kann er auch die zeitliche Abfolge von Ereignissen in seine Bewertung mit einfließen lassen (logischer Ansatz). Mithilfe der Anomaly Detection lassen sich zwar neue und unbekannte Angriffe erkennen, allerdings erzeugt diese aktive Erkennungsmethode in einigen Fällen auch Warnungen bei einem ungewöhnlichen System-Status, der nicht auf einen Eindringling zurückzuführen ist.
Ergebnisübermittlung
Im letzten Schritt informiert das Intrusion-Detection-System den Netzwerk-Administrator, insofern ein Angriff erkannt oder ein verdächtiges Systemverhalten festgestellt wurde. Je nach Gefahrenpotenzial gibt es verschiedene Möglichkeiten für die Form der Benachrichtigung. So kann das Abwehrsystem zum Beispiel
- eine E-Mail versenden, die die Art des Angriffes erläutert,
- einen lokalen Alarm wie ein Pop-up-Fenster in der Sicherheitskonsole auslösen,
- oder eine Alarmmeldung an ein mobiles Gerät schicken.
Der Gefährdungsgrad leitet sich bei der Anomaly Detection aus der Stärke der Abweichung vom jeweiligen Normwert ab, während das Misuse-Detection-Verfahren, wie bereits erwähnt, eine Einstufungsempfehlung der Signaturdatenbank erhält.
Die Vor- und Nachteile eines Intrusion-Detection-Systems
Mit ihren vielseitigen Technologien können Intrusion-Detection-Systeme Angriffe feststellen, die einer gewöhnlichen Firewall verborgen bleiben. Sie analysieren Datenpakete bis zur höchsten Schicht des OSI-Modells und überwachen damit auch ganz gezielt die einzelnen ausgeführten Anwendungen. Systeme mit Anomaly Detection können dank ihrer Vorgehensweise auch neuartige und flexible Angriffsmuster entdecken und so die Sicherheit eines Netzwerkes erhöhen. Man sollte allerdings keineswegs den Fehler machen und ein IDS als Firewall-Ersatz ansehen, denn nur eine Kombination aus beiden Sicherheitskomponenten sorgt für einen angemessenen Schutz.
Da Intrusion-Detection-Systeme aktive Komponenten eines Netzwerkes sind, stellen sie allerdings auch selbst ein potenzielles Angriffsziel dar – insbesondere, wenn der Eindringling von ihrer Existenz weiß. Aufgrund ihrer Anfälligkeit für DoS-Angriffe, also der gezielten Überlastung, kann er die IDS-Software so häufig innerhalb kürzester Zeit ausschalten. Zusätzlich kann der Angreifer sich auch die automatische Benachrichtigungsfunktion der Angriffserkennungssysteme zunutze machen, um von dem IDS aus DoS-Angriffe zu starten. Insbesondere die Anomalie-Erkennung stellt hier bei falscher Konfiguration eine große Schwachstelle dar. Bei zu empfindlichen Einstellungen ist die Anzahl an Alarmmeldungen nämlich sogar ohne unerlaubte Zugriffsversuche relativ hoch.
In jedem Fall müssen Sie Kosten bzw. Aufwand und Nutzen dieser Sicherheitssysteme abwägen, denn Sie benötigen nicht nur die IDS-Software, sondern auch die passende Hardware-Umgebung. Und auch wenn es leistungsstarke Open-Source-Lösungen wie das netzwerkbasierte Snort, das hostbasierte Samhain oder das hybride Suricata gibt, bleiben Ihnen die korrekte Installation, Einrichtung und Pflege nicht erspart.
Was ist ein Intrusion-Prevention-System?
Intrusion-Prevention-Systeme (IPS), im Deutschen frei mit Angriffsverhinderungssystemen übersetzbar, gehen – wie der Name bereits vermuten lässt – einen Schritt weiter als Intrusion Detection Systeme: Nachdem sie einen potenziellen Angriff festgestellt haben, informieren sie nicht nur den Administrator, sondern leiten sofort entsprechende Gegenmaßnahmen ein. Auf diese Weise umgehen sie die Problematik eines zu großen Zeitabstandes zwischen Erkennung und Bekämpfung eines Eindringlings, wie er bei IDS-Programmen auftreten kann. Hinsichtlich der eingesetzten Analysemethoden besteht grundsätzlich allerdings kein Unterschied zwischen den beiden Netzwerk-Schutzmechanismen. Ein heutiges IPS greift ebenso wie ein IDS auf host- und netzwerkbasierte Sensoren zurück, um gleichermaßen Systemdaten und Netzwerkpakete registrieren und beurteilen zu können.
Ein Intrusion-Prevention-System sollte sich in der Regel sehr individuell konfigurieren lassen, um zu verhindern, dass gewöhnliche Nutzeraktionen via Anomaly Detection als Gefahr eingestuft und blockiert werden. Dieser Umstand sorgt dafür, dass Sie mit vielen Programmen sowohl Intrusion-Prevention- als auch Intrusion-Detection-Systeme realisieren und damit im Prinzip zwischen aktivem Blocken und reiner Überwachung wählen können – wie zum Beispiel mit den bereits aufgeführten Open-Source-Anwendungen Snort und Suricata. Denkbar ist also sowohl ein System, das beide Ansätze kombiniert oder auch der Einsatz zwei getrennter Systeme. Für letztere Variante spricht, dass Filterung und Blockierung so auf unterschiedliche Hardware-Umgebungen aufgeteilt werden können.
Der Umfang eingesetzter IPS-Software kann stark variieren, wie das Beispiel der zwei abschließend präsentierten freien Programme DenyHosts und Snort verdeutlicht.
DenyHosts: Die unkomplizierte Antwort auf Brute Force
Mithilfe des in Python geschriebenen Tools DenyHosts richten Sie ein hostbasiertes Intrusion-Prevention-System für Ihre SSH/SSHD-Verbindungen ein, das Brute-Force-Attacken erkennt und unterbindet. Zu diesem Zweck überprüft die Open-Source-Anwendung die Einträge des Authentication-Logs auf neue, fehlgeschlagene SSH-Log-in-Versuche. Überschreitet die Zahl an Fehlversuchen, die von einer einzigen IP-Adresse aus unternommen werden, eine benutzerdefinierte Anzahl, blockiert DenyHosts diese IP und trägt sie in eine Blacklist ein. Auf diese Weise bleibt dem Angreifer zukünftig die Möglichkeit einer Anmeldung verwehrt, insofern er auf dieselbe Adresse zurückgreift.
Die einzigen Nutzungsvoraussetzungen sind ein unixoides Betriebssystem sowie die Skriptsprache Python inklusive des Moduls ipaddr, die in den meisten Distributionen standardmäßig enthalten sind. Aktuelle Versionen des IPS-Tools finden Sie im offiziellen DenyHosts-GitHub-Repository. Eine mögliche Alternative ist die sehr ähnlich vorgehende Sicherheitsanwendung Fail2ban.
Snort: Mit flexiblem Regelwerk zum sicheren Netzwerk
Bereits 1998 veröffentlichte der Programmierer Martin Roesch das Sicherheits-Tool Snort – zunächst allerdings nur in einer Unix-Version. Seit 2013 ist Cisco Systems für die Weiterentwicklung des unter der GPL-Lizenz stehenden und mittlerweile plattformübergreifenden Programmes verantwortlich. Das amerikanische Unternehmen bietet für das weiterhin freie Tool verschiedene kommerzielle Abonnement-Modelle an, die Privatpersonen oder Unternehmen unter anderem schnellere Regelwerk-Aktualisierungen und zusätzlichen User-Support gewähren. Snort bietet die notwendigen Funktionen, um leistungsstarke netzwerkbasierte Intrusion-Prevention-Systeme zu erstellen. Sie können die Software aber auch so konfigurieren, dass sie die jeweiligen Komponenten lediglich überwacht und somit als Basis für ein Intrusion-Detection-System dient.
Snort überprüft den Netzwerk-Traffic in Echtzeit und verwendet für die Analyse die Misuse-Detection-Engine BASE. Es vergleicht also die ein- und ausgehenden Datenpakete mit Signatur-Einträgen, die in Snort Regeln (rules) genannt werden. Cisco Systems ergänzt dieses Regelwerk regelmäßig um neu entdeckte Angriffsmuster, wobei die zahlende Kundschaft die Aktualisierungen –im Rahmen der bereits erwähnten Abonnement-Modelle – schneller erhält. Sie können aber auch eigene Regeln definieren und auf diese Weise die Aufspürungsfähigkeiten Ihres Snort-Systems verbessern. Weitere Informationen zur freien oder kommerziellen Nutzung von Snort finden Sie auf der Snort-Homepage.