Suricata 5.0-Angriffserkennungssystem verfügbar

Organisation OISF (Open Information Security Foundation) опубликовала Veröffentlichung eines Systems zur Erkennung und Verhinderung von Netzwerkeinbrüchen Erdmännchen 5.0, mit dem verschiedene Verkehrsarten untersucht werden können. In Suricata-Konfigurationen ist die Verwendung zulässig Signaturgrundlagen, entwickelt vom Snort-Projekt, sowie Regelwerke Neue Bedrohungen и Neue Bedrohungen Pro. Quellcode des Projekts Ausbreitung lizenziert unter GPLv2.

Wichtigste Änderungen:

  • Einführung neuer Parsing- und Protokollierungsmodule für Protokolle
    RDP, SNMP und SIP in Rust geschrieben. Dem FTP-Parsing-Modul wurde die Möglichkeit hinzugefügt, über das EVE-Subsystem zu protokollieren, das Ereignisse im JSON-Format ausgibt.

  • Zusätzlich zur Unterstützung für die in der vorherigen Version eingeführte JA3-TLS-Client-Authentifizierungsmethode wird auch die Methode unterstützt JA3S, erlauben Bestimmen Sie anhand der Besonderheiten der Verbindungsaushandlung und der angegebenen Parameter, welche Software zum Herstellen einer Verbindung verwendet wird (z. B. können Sie damit die Verwendung von Tor und anderen typischen Anwendungen bestimmen). JA3 ermöglicht die Definition von Clients und JA3S – Servern. Die Ergebnisse der Bestimmung können in der Regelsetzungssprache und in den Protokollen verwendet werden;
  • Experimentelle Möglichkeit zum Abgleich mit einer Stichprobe großer Datensätze hinzugefügt, implementiert durch neue Operationen Datensatz und Datenrep. Die Funktion ist beispielsweise auf die Suche nach Masken in großen Blacklists mit Millionen von Einträgen anwendbar;
  • Der HTTP-Inspektionsmodus bietet eine vollständige Abdeckung aller in der Testsuite beschriebenen Situationen HTTP-Evader (umfasst beispielsweise Techniken, die zum Verstecken bösartiger Aktivitäten im Datenverkehr verwendet werden);
  • Die Entwicklungstools für Rust-Module wurden von Optionen auf erforderliche Standardfunktionen verschoben. Zukünftig ist geplant, die Verwendung von Rust in der Codebasis des Projekts zu erweitern und Module schrittweise durch in Rust entwickelte Analoga zu ersetzen;
  • Die Protokollerkennungs-Engine wurde hinsichtlich Genauigkeit und Handhabung asynchroner Verkehrsströme verbessert;
  • Dem EVE-Protokoll wurde Unterstützung für den neuen Datensatztyp „Anomalie“ hinzugefügt, der atypische Ereignisse speichert, die beim Dekodieren von Paketen erkannt werden. EVE hat außerdem die Anzeige von Informationen zu VLANs und Traffic-Capture-Schnittstellen erweitert. Option hinzugefügt, um alle HTTP-Header in den HTTP-Einträgen des EVE-Protokolls zu speichern;
  • eBPF-basierte Handler bieten Unterstützung für Hardwaremechanismen zur Beschleunigung der Paketerfassung. Die Hardwarebeschleunigung ist derzeit auf Netronome-Netzwerkadapter beschränkt, wird aber bald auch für andere Geräte verfügbar sein.
  • Neu geschriebener Code zur Erfassung des Datenverkehrs mithilfe des Netmap-Frameworks. Es wurde die Möglichkeit hinzugefügt, erweiterte Netmap-Funktionen wie einen virtuellen Switch zu verwenden VALE;
  • Hinzugefügt von Unterstützung für ein neues Schlüsselwortdefinitionsschema für Sticky Buffers. Das neue Schema ist im Protokoll.buffer-Format definiert. Um beispielsweise einen URI zu prüfen, wäre das Schlüsselwort „http.uri“ anstelle von „http_uri“.
  • Der gesamte verwendete Python-Code wird auf Kompatibilität mit getestet
    Python3;

  • Die Unterstützung für die Tilera-Architektur, das dns.log-Textprotokoll und das alte files-json.log-Protokoll wurde eingestellt.

Merkmale von Suricata:

  • Verwenden eines einheitlichen Formats zur Anzeige von Validierungsergebnissen einheitlich2, wird auch vom Snort-Projekt verwendet und ermöglicht die Verwendung von Standardanalysetools wie Scheunenhof2. Möglichkeit zur Integration mit BASE-, Snorby-, Sguil- und SQueRT-Produkten. Unterstützung für die Ausgabe im PCAP-Format;
  • Unterstützung für die automatische Erkennung von Protokollen (IP, TCP, UDP, ICMP, HTTP, TLS, FTP, SMB usw.), wodurch Sie in den Regeln nur nach Protokolltyp arbeiten können, ohne Bezug auf die Portnummer (z. B , um HTTP-Verkehr auf einem nicht standardmäßigen Port zu blockieren). Decoder für die Protokolle HTTP, SSL, TLS, SMB, SMB2, DCERPC, SMTP, FTP und SSH;
  • Ein leistungsstarkes HTTP-Verkehrsanalysesystem, das eine spezielle HTP-Bibliothek verwendet, die vom Autor des Mod_Security-Projekts erstellt wurde, um den HTTP-Verkehr zu analysieren und zu normalisieren. Für die Verwaltung eines detaillierten Protokolls der Transit-HTTP-Übertragungen steht ein Modul zur Verfügung. Das Protokoll wird in einem Standardformat gespeichert
    Apache. Die Extraktion und Überprüfung von über das HTTP-Protokoll übertragenen Dateien wird unterstützt. Unterstützung für das Parsen komprimierter Inhalte. Möglichkeit zur Identifizierung anhand von URI, Cookie, Headern, Benutzeragenten, Anforderungs-/Antworttext;

  • Unterstützung für verschiedene Schnittstellen zum Abfangen von Datenverkehr, einschließlich NFQueue, IPFRing, LibPcap, IPFW, AF_PACKET, PF_RING. Es ist möglich, bereits gespeicherte Dateien im PCAP-Format zu analysieren;
  • Hohe Leistung, die Fähigkeit, Streams mit bis zu 10 Gigabit/Sek. auf herkömmlichen Geräten zu verarbeiten.
  • Hochleistungsfähige Mask-Matching-Engine mit großen IP-Adresssätzen. Unterstützung für die Inhaltsauswahl durch Maske und reguläre Ausdrücke. Trennung von Dateien vom Datenverkehr, einschließlich ihrer Identifizierung nach Name, Typ oder MD5-Prüfsumme.
  • Möglichkeit, Variablen in Regeln zu verwenden: Sie können Informationen aus dem Stream speichern und später in anderen Regeln verwenden;
  • Verwendung des YAML-Formats in Konfigurationsdateien, das es Ihnen ermöglicht, die Sichtbarkeit bei einfacher maschineller Verarbeitung aufrechtzuerhalten;
  • Volle IPv6-Unterstützung;
  • Eingebaute Engine zur automatischen Defragmentierung und Neuzusammenstellung von Paketen, die eine korrekte Verarbeitung der Streams unabhängig von der Reihenfolge, in der die Pakete ankommen, gewährleistet;
  • Unterstützung für Tunnelprotokolle: Teredo, IP-IP, IP6-IP4, IP4-IP6, GRE;
  • Unterstützung der Paketdekodierung: IPv4, IPv6, TCP, UDP, SCTP, ICMPv4, ICMPv6, GRE, Ethernet, PPP, PPPoE, Raw, SLL, VLAN;
  • Protokollierungsmodus für Schlüssel und Zertifikate, die in TLS/SSL-Verbindungen erscheinen;
  • Die Möglichkeit, Lua-Skripte zu schreiben, um erweiterte Analysen bereitzustellen und zusätzliche Funktionen zu implementieren, die zur Identifizierung von Verkehrstypen erforderlich sind, für die Standardregeln nicht ausreichen.
  • Source: opennet.ru

Kommentar hinzufügen