Ostateczna wersja beta systemu wykrywania włamań Snort 3

Cisco представила ostateczna wersja beta całkowicie przeprojektowanego systemu zapobiegania atakom Wciągnij 3, znany również jako projekt Snort++, jest realizowany z przerwami od 2005 r. Wersja Release Candidate ma zostać opublikowana jeszcze w tym roku.

Nowy oddział całkowicie na nowo przemyślał koncepcję produktu i przeprojektował architekturę. Z obszarów, na które położono nacisk przy przygotowaniu nowego oddziału, należy uproszczenie konfiguracji i uruchamiania Snorta, automatyzacja konfiguracji, uproszczenie języka konstruowania reguł, automatyczne wykrywanie wszystkich protokołów, zapewnienie powłoki do kontroli z poziomu wiersz poleceń, aktywne wykorzystanie wielowątkowości ze współdzielonym dostępem różnych procedur obsługi do pojedynczej konfiguracji.

Wdrożono następujące istotne innowacje:

  • Dokonano przejścia na nowy system konfiguracji, oferujący uproszczoną składnię i pozwalający na wykorzystanie skryptów do dynamicznego generowania ustawień. LuaJIT służy do przetwarzania plików konfiguracyjnych. Wtyczki oparte na LuaJIT posiadają implementację dodatkowych opcji reguł i systemu logowania;
  • Zmodernizowano silnik wykrywania ataków, zaktualizowano reguły, dodano możliwość wiązania buforów w regułach (bufory lepkie). Wykorzystano wyszukiwarkę Hyperscan, która umożliwiła korzystanie z szybszych i dokładniejszych szablonów opartych na wyrażeniach regularnych w regułach;
  • Dodano nowy tryb introspekcji dla HTTP, który jest stanem sesji i obejmuje 99% sytuacji obsługiwanych przez zestaw testów Ochraniacz HTTP. Kod obsługi protokołu HTTP/2 jest w fazie rozwoju;
  • Wydajność trybu głębokiej inspekcji pakietów została znacznie poprawiona. Dodano możliwość wielowątkowego przetwarzania pakietów, umożliwiającą jednoczesne wykonywanie kilku wątków z obsługą pakietów i zapewniającą liniową skalowalność w zależności od liczby rdzeni procesora;
  • Wdrożono wspólne repozytorium tabel konfiguracyjnych i atrybutów, które jest współdzielone pomiędzy różnymi podsystemami, co znacznie zmniejszyło zużycie pamięci dzięki eliminacji duplikacji informacji;
  • Nowy system rejestrowania zdarzeń wykorzystujący format JSON i łatwo integrujący się z platformami zewnętrznymi, takimi jak Elastic Stack;
  • Przejście na architekturę modułową, możliwość rozbudowy funkcjonalności poprzez podłączenie wtyczek oraz realizację kluczowych podsystemów w postaci wymiennych wtyczek. Obecnie do Snort 3 zaimplementowano już kilkaset wtyczek obejmujących różne obszary zastosowań, np. pozwalających na dodawanie własnych kodeków, trybów introspekcji, metod logowania, akcji i opcji w regułach;
  • Automatyczne wykrywanie uruchomionych usług, eliminujące potrzebę ręcznego określania aktywnych portów sieciowych.

Zmiany od ostatniej wersji testowej, która została opublikowana w 2018 roku:

  • Dodano obsługę plików w celu szybkiego nadpisania ustawień w stosunku do konfiguracji domyślnej;
  • W kodzie istnieje możliwość wykorzystania konstrukcji C++ zdefiniowanych w standardzie C++14 (kompilacja wymaga kompilatora obsługującego C++14);
  • Dodano nowy moduł obsługi VXLAN;
  • Ulepszone wyszukiwanie typów treści według treści przy użyciu zaktualizowanych alternatywnych implementacji algorytmów Boyera-Moore'a и Hiperskan;
  • System kontroli ruchu HTTP/2 został praktycznie doprowadzony do pełnej gotowości;
  • Uruchamianie jest przyspieszane dzięki zastosowaniu kilku wątków do kompilacji grup reguł;
  • Dodano nowy mechanizm logowania;
  • Ulepszone wykrywanie błędów Lua i zoptymalizowane białe listy;
  • Wprowadzono zmiany, aby wdrożyć ustawienia przeładowania na bieżąco;
  • Dodano system inspekcji RNA (Real-time Network Awareness), który zbiera informacje o zasobach, hostach, aplikacjach i usługach dostępnych w sieci;
  • Użycie snort_config.lua i SNORT_LUA_PATH zostało uznane za przestarzałe w celu uproszczenia konfiguracji.

Źródło: opennet.ru

Dodaj komentarz