Finaler Beta-Release des Intrusion-Detection-Systems Snort 3

Das Unternehmen Cisco hat die finale Beta-Version des vollständig überarbeiteten Angreiferschutzsystems Snort 3, auch bekannt als Projekt Snort++, an dem seit 2005 mit Unterbrechungen gearbeitet wird. Später in diesem Jahr ist die Veröffentlichung eines Release-Kandidaten geplant.

In der neuen Version wurde das Konzept des Produkts vollständig neu gestaltet und die Architektur überarbeitet. Zu den Schwerpunkten, die bei der Vorbereitung der neuen Version gesetzt wurden, zählen die Vereinfachung der Konfiguration und des Starts von Snort, die Automatisierung der Konfiguration, die Vereinfachung der Regelbau-Sprache, die automatische Erkennung aller Protokolle, die Bereitstellung einer Shell zur Verwaltung über die Kommandozeile sowie die aktive Nutzung von Multithreading mit gemeinsamem Zugriff verschiedener Behandler auf eine einheitliche Konfiguration.

Die folgenden wesentlichen Neuerungen wurden umgesetzt:

  • Der Übergang zu einem neuen Konfigurationssystem wurde vollzogen, das eine vereinfachte Syntax bietet und die Verwendung von Skripten für die dynamische Erstellung von Einstellungen ermöglicht. Für die Verarbeitung von Konfigurationsdateien wird LuaJIT verwendet. Es werden Plugins auf Basis von LuaJIT bereitgestellt, die zusätzliche Optionen für Regeln und die Protokollierung implementieren;
  • Die Engine zur Angriffsdetektion wurde modernisiert, die Regeln aktualisiert und die Möglichkeit zur Bindung von Puffern in den Regeln (sticky buffers) hinzugefügt. Die Suchmaschine Hyperscan wurde in Anspruch genommen, die es ermöglicht, in den Regeln schnellere und präziser auslösende Muster auf Basis von regulären Ausdrücken zu verwenden;
  • Ein neuer Introspektionsmodus für HTTP wurde hinzugefügt, der den Sitzungsstatus berücksichtigt und 99% der Situationen abdeckt, die von dem Test-Kit unterstützt werden. HTTP Evader. Der Code zur Unterstützung von HTTP/2 ist in Entwicklung;
  • Die Leistung des Deep Packet Inspection-Modus wurde erheblich gesteigert. Es wurde die Möglichkeit zur multithreaded Verarbeitung von Paketen hinzugefügt, die die gleichzeitige Ausführung mehrerer Threads mit Packet-Handlern ermöglicht und lineare Skalierbarkeit in Abhängigkeit von der Anzahl der CPU-Kerne bietet;
  • Ein gemeinsamer Speicher für Konfigurationen und Attributtabellen wurde implementiert, der gemeinsam in verschiedenen Subsystemen genutzt wird, wodurch der Speicherverbrauch durch die Eliminierung von Datenwiederholungen deutlich gesenkt werden konnte;
  • Ein neues Ereignisprotokollierungssystem, das das JSON-Format verwendet und sich leicht in externe Plattformen wie Elastic Stack integrieren lässt;
  • Übergang zu einer modularen Architektur, Möglichkeit zur Funktionserweiterung durch die Anbindung von Plugins und Umsetzung zentraler Teilsysteme in Form von austauschbaren Plugins. Aktuell sind für Snort 3 bereits mehrere Hundert Plugins implementiert, die verschiedene Anwendungsbereiche abdecken, beispielsweise zur Integration eigener Codecs, Introspektionsmodi, Protokollierungsmethoden, Aktionen und Optionen in den Regeln;
  • Automatische Erkennung aktiver Dienste, die die manuelle Angabe aktiver Netzwerkports überflüssig macht.

Änderungen im Vergleich zur letzten Testversion, die 2018 veröffentlicht wurde:

  • Unterstützung für Dateien zur schnellen Überriding von Einstellungen im Vergleich zur Standardkonfiguration hinzugefügt;
  • Der Code ermöglicht die Nutzung von C++-Konstruktionen, die im Standard C++14 definiert sind (für den Build wird ein Compiler benötigt, der C++14 unterstützt);
  • Neuer VXLAN-Handler hinzugefügt;
  • Verbesserte Inhalte-Suche durch aktualisierte alternative Implementierungen von Algorithmen Boyer-Moore und Hyperscan;
  • Das HTTP/2-Traffic-Inspektionssystem steht kurz vor der vollständigen Fertigstellung;
  • Der Start wurde durch die Nutzung mehrerer Threads für die Kompilierung von Regelgruppen beschleunigt;
  • Ein neuer Logging-Mechanismus wurde hinzugefügt;
  • Verbesserte Erkennung von Lua-Fehlern und optimierte Funktionalität von Whitelists;
  • Änderungen vorgenommen, die eine Echtzeit-Neuladen der Einstellungen ermöglichen;
  • Ein RNA-Inspektionssystem (Real-time Network Awareness) wurde hinzugefügt, das Informationen über verfügbare Netzwerkressourcen, Hosts, Anwendungen und Dienste sammelt;
  • Um die Konfiguration zu vereinfachen, wurde die Verwendung von snort_config.lua und SNORT_LUA_PATH eingestellt.

Quelle: opennet.ru

60GB SSD 8Gb DDR4