Ursprünglich geschrieben von Joe Schreiber, neu geschrieben und bearbeitet von Gastblogger, neu bearbeitet und erweitert von Rich Langston
Ob Sie Hosts oder die Netzwerke, die sie verbinden, überwachen müssen, um die neuesten Bedrohungen zu identifizieren, es gibt einige großartige Open-Source-Intrusion-Detection (IDS)-Tools für Sie.
- Liste der Open-Source-IDS-Tools
- IDS-Erkennungstechniken
- Signaturbasierte IDS-Tools
- Unified Security Management
- Anomalie-basierte IDS-Tools
- Vor- und Nachteile
- Netzwerkbasierte IDS (NIDS)
- Snort
- Suricata
- Bro (renamed Zeek)
- Host-basierte IDS (HIDS)
- OSSEC
- OSSEC Zusammenfassung:
- Samhain Labs
- Samhain Summary:
- File Integrity Monitoring (FIM Only)
- Abschließende Überlegungen
Liste der Open-Source-IDS-Tools
- Snort
- Suricata
- Bro (Zeek)
- OSSEC
- Samhain Labs
- OpenDLP
IDS-Erkennungstechniken
Es gibt zwei primäre Techniken zur Erkennung von Bedrohungen: signaturbasierte Erkennung und anomaliebasierte Erkennung. Diese Erkennungstechniken sind wichtig, wenn Sie sich für eine Signatur- oder eine Anomalie-Erkennungs-Engine entscheiden, aber die Anbieter sind sich der Vorteile beider Techniken bewusst, und einige bauen beide in ihre Produkte ein. Wenn Sie ihre Stärken und Schwächen kennen, können Sie verstehen, wie sie sich gegenseitig ergänzen können.
Signaturbasierte IDS-Tools
Bei einem signaturbasierten IDS, auch bekannt als wissensbasiertes IDS, wird nach Regeln oder Mustern des bekannten bösartigen Datenverkehrs gesucht. Sobald eine Übereinstimmung mit einer Signatur gefunden wird, wird eine Warnung an Ihren Administrator gesendet. Diese Warnungen können Probleme wie bekannte Malware, Netzwerk-Scan-Aktivitäten und Angriffe auf Server aufdecken.
Unified Security Management
Eine Plattform, die die wesentlichen Sicherheitsfunktionen, einschließlich IDS, Asset Discovery und SIEM Log Management, vereint.
Erfahren Sie mehr
Anomalie-basierte IDS-Tools
Bei einem anomalie-basierten IDS, auch verhaltensbasiertes IDS genannt, ist die Aktivität, die den Datenverkehr generiert hat, viel wichtiger als die Nutzlast, die übermittelt wird. Ein auf Anomalien basierendes IDS-Tool stützt sich eher auf Basislinien als auf Signaturen. Es sucht nach ungewöhnlichen Aktivitäten, die von den statistischen Durchschnittswerten früherer Aktivitäten oder zuvor beobachteter Aktivitäten abweichen. Wenn sich beispielsweise ein Benutzer immer von Kalifornien aus in das Netzwerk einloggt und auf technische Dateien zugreift, ist dies ein Warnsignal, wenn sich derselbe Benutzer von Peking aus einloggt und auf HR-Dateien zugreift.
Sowohl signaturbasierte als auch anomaliebasierte Erkennungstechniken werden in der Regel auf dieselbe Art und Weise eingesetzt, obwohl man argumentieren könnte, dass man ein anomaliebasiertes IDS auf der Grundlage von extern gesammelten Netflow-Daten oder ähnlichen Verkehrsinformationen erstellen könnte (und dies auch getan hat).
Vor- und Nachteile
Bei der signaturbasierten Erkennung treten weniger Fehlalarme auf, aber es werden nur bekannte Signaturen markiert, so dass eine Sicherheitslücke für neue und noch nicht identifizierte Bedrohungen entsteht. Bei der anomaliebasierten Erkennung treten mehr Fehlalarme auf, aber wenn sie richtig konfiguriert ist, werden auch bisher unbekannte Bedrohungen erkannt.
Netzwerkbasierte IDS (NIDS)
Netzwerkbasierte Intrusion Detection Systeme (NIDS) untersuchen den gesamten Datenverkehr in einem Netzwerksegment, um bösartige Aktivitäten zu erkennen. Bei NIDS wird eine Kopie des Datenverkehrs, der das Netzwerk durchquert, an das NIDS-Gerät weitergeleitet, indem der Datenverkehr über Switches und/oder Router gespiegelt wird.
Ein NIDS-Gerät überwacht den Datenverkehr und schlägt bei bestimmten Mustern oder Signaturen Alarm. Wenn bösartige Ereignisse vom NIDS-Gerät erkannt werden, werden wichtige Informationen protokolliert. Diese Daten müssen überwacht werden, um zu wissen, dass ein Ereignis stattgefunden hat. Durch die Kombination dieser Informationen mit Ereignissen, die von anderen Systemen und Geräten erfasst werden, können Sie sich ein vollständiges Bild von der Sicherheitslage Ihres Netzwerks machen. Beachten Sie, dass keines der hier vorgestellten Tools die Protokolle selbst korreliert. Dies ist im Allgemeinen die Aufgabe eines Security Information and Event Managers (SIEM).
Snort
Ach, das ehrwürdige Schweinchen, das Pakete liebt. Viele werden sich an das Jahr 1998 erinnern, in dem Windows 98 auf den Markt kam, aber es war auch das Jahr, in dem Martin Roesch Snort zum ersten Mal veröffentlichte. Damals war Snort zwar noch kein echtes IDS, aber das war seine Bestimmung. Seitdem ist es dank der Beiträge der Community zum De-facto-Standard für IDS geworden.
Es ist wichtig zu wissen, dass Snort keine echte grafische Benutzeroberfläche oder eine einfach zu bedienende Verwaltungskonsole hat, obwohl viele andere Open-Source-Tools wie BASE und Sguil entwickelt wurden, um dabei zu helfen. Diese Tools bieten ein Web-Frontend zur Abfrage und Analyse von Alarmen, die von Snort IDS kommen.
Snort Zusammenfassung
- Lange Produktlebensdauer ohne Anzeichen eines Auslaufens
- Großer Community-Support
- Vielfältige administrative Frontends
- Gründlich erprobt und getestet
- Großer Community-Support
- Nach Angaben auf der Snort-Website gehören zu den Merkmalen:
- Modularer Aufbau:
- Multi-threading for packet processing
- Shared configuration and attribute table
- Use a simple, scriptable configuration
- Plugin framework, make key components pluggable (and 200+ plugins)
- Auto-detect services for portless configuration
- Auto-generate reference documentation
- Scalable memory profile
- Rule parser and syntax (support sticky buffers in rules)
- Documentation:
- Ruleset Updates
- Snort FAQ
- A Snort Cheatsheet
- A plugin for Snort is available for AlienVault USM Anywhere.
Suricata
What’s the only reason for not running Snort? If you’re using Suricata instead. Although Suricata’s architecture is different than Snort, it behaves the same way as Snort and can use the same signatures. What’s great about Suricata is what else it’s capable of over Snort. Es kann so viel mehr, dass es wahrscheinlich einen eigenen Beitrag verdient.
Es gibt Open-Source-Tools von Drittanbietern für ein Web-Frontend zur Abfrage und Analyse von Alarmen, die von Suricata IDS kommen.
Suricata Zusammenfassung
- Multi-Threaded – Snort läuft mit einem einzigen Thread, was bedeutet, dass es nur eine CPU (Kern) zur gleichen Zeit verwenden kann. Suricata kann viele Threads laufen lassen, so dass es die Vorteile aller verfügbaren CPUs/Kerne nutzen kann. Snort sagt Nein und einige Benchmarks sagen Ja.
- Eingebaute Hardware-Beschleunigung – Wussten Sie, dass Sie Grafikkarten verwenden können, um den Netzwerkverkehr zu untersuchen?
- Datei-Extraktion – Jemand lädt Malware herunter? Sie können sie direkt von Suricata aus erfassen und untersuchen.
- LuaJIT – Ja, das sind viele Buchstaben, aber es ist auch eine Skripting-Engine, die mit Informationen aus den von Suricata untersuchten Paketen verwendet werden kann. Das macht komplexe Abgleiche noch einfacher und Sie können sogar an Effizienz gewinnen, indem Sie mehrere Regeln in einem Skript kombinieren.
- Mehr als nur Pakete protokollieren – Suricata kann Dinge wie TLS/SSL-Zertifikate, HTTP-Anfragen, DNS-Anfragen erfassen und protokollieren
- Großartiger Community-Support
- Nach Angaben auf der Suricata-Website gehören zu den Merkmalen:
- Hohe Leistung – Multi-Threaded, skalierbare Code-Basis
- Mehrzweck-Engine – NIDS, NIPS, NSM, Offline-Analyse, etc.
- Plattformübergreifende Unterstützung – Linux, Windows, macOS, OpenBSD, etc.
- Moderne TCP/IP-Unterstützung, einschließlich einer skalierbaren Flow-Engine, vollständigem IPv4/IPv6, TCP-Streams und IP-Paket-Defragmentierung
- Protokoll-Parser – Paket-Dekodierung, Dekodierung der Anwendungsschicht
- HTTP-Engine – HTTP-Parser, Request-Logger, Keyword-Match, etc.
- Autodetect services for portless configuration
- Lua scripting (LuaJIT)
- Application-layer logging and analysis, including TLS/SSL certs, HTTP requests, DNS requests, and more
- Built-in hardware acceleration (GPU for network sniffing)
- File extraction
- Documentation:
- Suricata User Guide
- User and Developer Docs
- Suricata FAQ
Bro (renamed Zeek)
Bro, which was renamed Zeek in late 2018 and is sometimes referred to as Bro-IDS or now Zeek-IDS, is a bit different than Snort and Suricata. In a way, Bro is both a signature and anomaly-based IDS. Its analysis engine will convert traffic captured into a series of events. An event could be a user login to FTP, a connection to a website or practically anything. The power of the system is what comes after the event engine and that’s the Policy Script Interpreter. Diese Policy-Engine verfügt über eine eigene Sprache (Bro-Script) und kann einige sehr leistungsfähige und vielseitige Aufgaben ausführen.
Wenn Sie ein Analytiker sind und sich gefragt haben: „Wie kann ich einen Teil meiner Arbeit automatisieren?“, dann ist dies das Tool, nach dem Sie gesucht haben. Möchten Sie Dateien herunterladen, die Sie im Internet gesehen haben, sie zur Malware-Analyse einreichen, Sie benachrichtigen, wenn ein Problem gefunden wird, die Quelle auf eine schwarze Liste setzen und den Computer des Benutzers, der die Datei heruntergeladen hat, abschalten? Sie möchten das Nutzungsverhalten eines Benutzers verfolgen, nachdem dieser eine IP aus einer Reputationsdatenbank kontaktiert hat?
Wenn Sie kein Analyst sind, wird dieses Tool eine schwierige Lernkurve haben. Da es als Forschungstool entwickelt wurde, lag der Schwerpunkt ursprünglich nicht auf Dingen wie Benutzeroberflächen, Benutzerfreundlichkeit und einfacher Installation. Während es zahlreiche coole Dinge direkt nach dem Auspacken tut, sind viele dieser Dinge nicht sofort umsetzbar und können schwierig zu interpretieren sein.
Es gibt keine native GUI, aber es gibt Open-Source-Tools von Drittanbietern für ein Web-Frontend, um die von Bro-IDS kommenden Alarme abzufragen und zu analysieren. Consider ELK stack.
Bro Summary
- Complicated to set up
- Can detect patterns of activity other IDS systems can not
- Very extensible architecture
- Good community support
- According to Bro’s website, features include:
- Comprehensive traffic logging and analysis
- Powerful and flexible event-driven scripting language (Bro scripts)
- Deploys on UNIX-style systems, including Linux, FreeBSD, and MacOS
- DNS/FTP/HTTP/IRC/SMTP/SSH/SSL/other protocol support
- Fully passive traffic analysis with network tap or monitoring port
- Real-time and offline analysis
- Cluster-support for large-scale deployments
- Comprehensive IPv6 support
- IDS-style pattern matching
- File extraction
- Extensible architecture
- Analysts can use Bro for automation (file extraction, malware analysis, blacklisting, track usage patterns, research work, etc.)
- Dokumentation:
- Bro Manual
- Bro Docs
- Bro FAQ
Host-basierte IDS (HIDS)
Host-basierte Intrusion Detection Systeme (HIDS) arbeiten durch die Überwachung von Aktivitäten, die intern auf einem Endpunkt-Host stattfinden. HIDS-Anwendungen (z. B. Antiviren-Software, Software zur Erkennung von Spyware, Firewalls) werden in der Regel auf allen mit dem Internet verbundenen Computern innerhalb eines Netzwerks oder auf einer Teilmenge wichtiger Systeme, wie etwa Servern, installiert. Dazu gehören auch solche in öffentlichen Cloud-Umgebungen.
HIDS suchen nach ungewöhnlichen oder schändlichen Aktivitäten, indem sie vom Betriebssystem erstellte Protokolle untersuchen, nach Änderungen an wichtigen Systemdateien suchen, installierte Software verfolgen und manchmal die Netzwerkverbindungen eines Hosts untersuchen.
Die ersten HIDS-Systeme waren einfach und beschränkten sich in der Regel darauf, in regelmäßigen Abständen MD5-Hashes von Dateien zu erstellen und nach Diskrepanzen zu suchen, wobei ein als File Integrity Monitoring (FIM) bezeichneter Prozess verwendet wurde. Seitdem sind HIDS weitaus komplexer geworden und erfüllen eine Vielzahl nützlicher Sicherheitsfunktionen, und sie werden weiter wachsen. Dazu gehören auch moderne Endpoint Response (EDR)-Funktionen.
Wenn Ihr Unternehmen ein Compliance-Mandat hat, wie z.B. für PCI DSS, HIPAA oder ISO 27001, dann benötigen Sie möglicherweise ein HIDS, das sowohl File Integrity Monitoring (FIM) als auch aktives Threat Monitoring vorweisen kann.
OSSEC
Im Bereich der voll ausgestatteten Open Source HIDS-Tools gibt es OSSEC und nicht viel mehr. Die gute Nachricht ist, dass OSSEC sehr gut in dem ist, was es tut, und ziemlich erweiterbar ist.
OSSEC läuft auf fast allen wichtigen Betriebssystemen und beinhaltet eine Client/Server-basierte Management- und Logging-Architektur, was in einem HIDS-System sehr wichtig ist. Da lokale HIDS zur gleichen Zeit wie das Betriebssystem kompromittiert werden können, ist es sehr wichtig, dass Sicherheits- und forensische Informationen den Host verlassen und an einem anderen Ort gespeichert werden, um jede Art von Manipulation oder Verschleierung zu vermeiden, die eine Entdeckung verhindern würde.
Die Client/Server-Architektur vonOSSEC berücksichtigt diese Strategie, indem sie Warnungen und Protokolle an einen zentralen Server liefert, auf dem die Analyse und Benachrichtigung erfolgen kann, selbst wenn das Host-System offline genommen oder kompromittiert wurde. Ein weiterer Vorteil der Client/Server-Architektur ist die Möglichkeit, Agenten von einem einzigen Server aus zentral zu verwalten. Da die Zahl der Installationen von einer bis zu Tausenden reichen kann, ist die Möglichkeit, globale Änderungen von einem zentralen Server aus vorzunehmen, für die Vernunft eines Administrators von entscheidender Bedeutung.
Wenn über OSSEC (und andere HIDS) diskutiert wird, gibt es oft Bedenken hinsichtlich der Installation eines Agenten oder einer Software auf kritischen Servern. Es sollte angemerkt werden, dass die Installation von OSSEC extrem leicht ist (das Installationsprogramm ist weniger als 1 MB groß) und der Großteil der Analyse tatsächlich auf dem Server stattfindet, was bedeutet, dass OSSEC auf dem Host nur sehr wenig CPU verbraucht. OSSEC hat auch die Möglichkeit, Betriebssystemprotokolle zur Analyse und Speicherung an den Server zu senden, was besonders auf Windows-Rechnern hilfreich ist, die keine nativen und plattformübergreifenden Protokollierungsmechanismen haben.
OSSEC Zusammenfassung:
- Agenten für fast jedes Betriebssystem
- Kompilierter Agent für Windows
- Viel mehr Funktionalität als nur FIM
- Strenger, aber einfacher Installationsprozess
- Guter Community-Support
- Laut der OSSEC-Website gehören zu den Funktionen:
- File integrity monitoring (FIM)
- Log monitoring collects, analyzes, and correlates system logs
- Rootkit detection, which searches for system modifications similar to rootkits
- Active response can invoke automated response action when alerts are triggered
- Client/Server architecture
- Multi-platform support (Linux, Solaris, Windows, MacOS, etc.)
- Supports compliance requirements for FIM
- Real-time and configurable alerts
- Integration with current infrastructure
- Centralized server for mass policy management
- Agent and agentless monitoring
- A plugin for OSSEC is available for AlienVault USM Anywhere. To learn more, read here.
- Documentation:
- OSSEC Docs
- OSSEC FAQ
- OSSEC Github
Samhain Labs
Samhain is probably the only HIDS open-source that gives OSSEC a run for its money. Aber es ist ein Fall von „gleich und doch anders“, wenn man die beiden vergleicht. Samhain hat die gleiche Client/Server-Architektur, benötigt sie aber nicht wie OSSEC. Der Agent selbst verfügt über eine Vielzahl von Ausgabemethoden, darunter ein zentrales Log-Repository, aber auch andere wie Syslog, E-Mail und RDBMS. Es besteht sogar die Möglichkeit, Samhain als eigenständige Anwendung auf einem einzelnen Host zu verwenden.
Ein weiterer wichtiger Unterschied ist der Ort, an dem die Analyse stattfindet. Anders als bei OSSEC findet die Verarbeitung auf dem Client selbst statt, was sich auf den Betrieb auswirkt. From a practical point of view, care must be taken it doesn’t overload a busy server and interfere with operations. From the security point of view, having the brains on the endpoint invites hackers to deactivate the tool so warnings aren’t issued.
Samhain Summary:
- Harder to install
- Windows clients require Cygwin
- Great FIM functionality
- More flexible client
- Okay community support
- According to Samhain’s website, features include:
- File integrity monitoring (FIM)
- Log file monitoring and analysis
- Rootkit detection
- Port monitoring
- Detection of rogue SUID executables and hidden processes
- Multi-platform support
- Centralized logging and maintenance
- Client/Server architecture (mostly)
- Variety of output methods (e.g. syslog, email RDBMS)
- Can be used as a standalone application on a single host
- Documentation:
- Samhain Docs
- Samhain Benutzerhandbuch
- Samhain FAQ
File Integrity Monitoring (FIM Only)
Viele Tools zur Überwachung der Dateiintegrität (FIM) werden mit HIDS kategorisiert, da FIM die Erkennung von Bedrohungen beinhaltet, also lassen Sie uns darüber sprechen. FIM ist ein Tool, das die Integrität des Betriebssystems und bestimmter Anwendungsdateien überprüft, indem es die aktuellen Versionen mit bekannten gültigen Versionen vergleicht und den Administrator warnt, wenn sie geändert werden. Dies ist wichtig, da Änderungen auf kritischen Servern oft auf eine Sicherheitsverletzung hindeuten. Wenn Sie sich immer noch fragen „Was ist Dateiintegritätsüberwachung und warum brauche ich sie?“, haben wir einen ganzen Blog-Beitrag, der erklärt, warum.
Einige FIM werden aktiv entwickelt, während andere seit Jahren nicht mehr aktualisiert wurden. Open Source Tripwire und AFICK sind zwei mögliche Open-Source-FIM-Produkte. Für eigenständige Unix-basierte Systeme sollten Sie Rootkit-findende Dateiintegritätsprüfprogramme wie chkrootkit, rkhunter oder Unhide in Betracht ziehen. Aufgrund des einzigartigen Mechanismus zur Rootkit-Suche sind diese Lösungen eine Überlegung wert. Proprietäre Lösungen sind auch für Windows verfügbar.
Die Unified Security Management (USM) Plattform von AlienVault bietet integrierte FIM-Funktionen, um Technologien zur Erkennung von Bedrohungen voranzutreiben und Ihre Bemühungen um die Einhaltung von Cybersecurity-Richtlinien zu beschleunigen. Wenn Sie mehr darüber erfahren möchten, wie AlienVault USM FIM zum Schutz Ihrer Ressourcen einsetzt, lesen Sie hier.
Abschließende Überlegungen
Hoffentlich hat Ihnen dieser Leitfaden geholfen, einige Ihrer Open-Source-Optionen zu verstehen. Wie hier gezeigt wurde, gab es noch nie eine so große Auswahl oder ein breiteres Angebot an Tools. Mit einer sorgfältigen Planung und einem Plan für die laufende Wartung können Sie mit diesen Tools ein sicheres Netzwerk aufbauen. Mit einer sorgfältigen Planung und einem Plan für die laufende Wartung können Sie mit diesen Tools ein sicheres Netzwerk aufbauen.