Letzte Beta-Version des Snort 3-Intrusion-Detection-Systems

Cisco präsentiert letzte Beta-Version eines komplett neu gestalteten Angriffsschutzsystems Schnauben 3, auch bekannt als Snort++-Projekt, an dem seit 2005 mit Unterbrechungen gearbeitet wird. Ein Release Candidate soll noch in diesem Jahr veröffentlicht werden.

In der neuen Filiale wird das Produktkonzept komplett neu gedacht und die Architektur neu gestaltet. Zu den Bereichen, die bei der Vorbereitung eines neuen Zweigs hervorgehoben wurden, gehörten die Vereinfachung der Einrichtung und des Starts von Snort, die Automatisierung der Konfiguration, die Vereinfachung der Sprache zum Erstellen von Regeln, die automatische Erkennung aller Protokolle und die Bereitstellung einer Shell zur Steuerung über den Befehl Linie, aktive Nutzung von Multithreading mit gemeinsamem Zugriff verschiedener Prozessoren auf eine einzige Konfiguration.

Folgende wesentliche Neuerungen wurden umgesetzt:

  • Es wurde auf ein neues Konfigurationssystem umgestellt, das eine vereinfachte Syntax bietet und die Verwendung von Skripten zur dynamischen Generierung von Einstellungen ermöglicht. LuaJIT wird zur Verarbeitung von Konfigurationsdateien verwendet. Auf LuaJIT basierende Plugins verfügen über die Implementierung zusätzlicher Optionen für Regeln und ein Protokollierungssystem;
  • Die Angriffserkennungs-Engine wurde modernisiert, die Regeln wurden aktualisiert und die Möglichkeit, Puffer in Regeln zu binden (Sticky Buffer), wurde hinzugefügt. Zum Einsatz kam die Hyperscan-Suchmaschine, die es ermöglichte, schneller und genauer ausgelöste Muster auf Basis regulärer Ausdrücke in den Regeln zu verwenden;
  • Es wurde ein neuer Selbstprüfungsmodus für HTTP hinzugefügt, der den Sitzungsstatus berücksichtigt und 99 % der von der Testsuite unterstützten Situationen abdeckt HTTP-Evader. Code zur Unterstützung von HTTP/2 befindet sich in der Entwicklung;
  • Die Leistung des Deep Packet Inspection-Modus wurde deutlich verbessert. Möglichkeit zur Multithread-Paketverarbeitung hinzugefügt, die die gleichzeitige Ausführung mehrerer Threads mit Paketprozessoren ermöglicht und eine lineare Skalierbarkeit abhängig von der Anzahl der CPU-Kerne bietet;
  • Es wurden ein gemeinsamer Konfigurationsspeicher und Attributtabellen implementiert, die von verschiedenen Subsystemen gemeinsam genutzt werden, was den Speicherverbrauch erheblich reduziert hat, indem die Duplizierung von Informationen vermieden wurde.
  • Neues Ereignisprotokollierungssystem im JSON-Format und einfache Integration in externe Plattformen wie Elastic Stack;
  • Übergang zu einer modularen Architektur, die Möglichkeit, die Funktionalität durch die Verbindung von Plugins und die Implementierung wichtiger Subsysteme in Form austauschbarer Plugins zu erweitern. Derzeit sind für Snort 3 bereits mehrere hundert Plugins implementiert, die verschiedene Anwendungsbereiche abdecken, beispielsweise das Hinzufügen eigener Codecs, Introspection-Modi, Protokollierungsmethoden, Aktionen und Optionen in den Regeln;
  • Automatische Erkennung laufender Dienste, wodurch die manuelle Angabe aktiver Netzwerkports entfällt.

Änderungen gegenüber der letzten Testversion, die 2018 veröffentlicht wurde:

  • Unterstützung für Dateien hinzugefügt, um Einstellungen relativ zur Standardkonfiguration schnell zu überschreiben;
  • Der Code bietet die Möglichkeit, im C++14-Standard definierte C++-Konstrukte zu verwenden (Build erfordert einen Compiler, der C++14 unterstützt);
  • Neuer VXLAN-Handler hinzugefügt;
  • Verbesserte Suche nach Inhaltstypen nach Inhalt mithilfe aktualisierter alternativer Algorithmusimplementierungen Boyer-Moore и Hyperscan;
  • Das HTTP/2-Verkehrskontrollsystem ist fast vollständig einsatzbereit;
  • Der Start wird beschleunigt, indem mehrere Threads zum Kompilieren von Regelgruppen verwendet werden.
  • Neuer Protokollierungsmechanismus hinzugefügt;
  • Verbesserte Erkennung von Lua-Fehlern und optimierte Whitelists;
  • Es wurden Änderungen vorgenommen, um das Neuladen von Einstellungen im laufenden Betrieb zu ermöglichen.
  • Es wurde ein RNA-Inspektionssystem (Real-time Network Awareness) hinzugefügt, das Informationen über im Netzwerk verfügbare Ressourcen, Hosts, Anwendungen und Dienste sammelt.
  • Um die Konfiguration zu vereinfachen, wurde die Verwendung von snort_config.lua und SNORT_LUA_PATH eingestellt.

Source: opennet.ru

Kommentar hinzufügen