Baza wiedzy

Podsystem Vigil: lokalne wykrywanie zagrożeń

Podsystem Vigil: lokalne wykrywanie zagrożeń

Tradycyjne skanery podatności często wymagają komunikacji z zewnętrznymi chmurowymi interfejsami API w celu przeskanowania plików. Takie podejście przesyła metadane lub skróty plików poza lokalną infrastrukturę, co może powodować opóźnienia i rodzić kwestie związane z prywatnością danych.

Vigil Active Defense Engine w StateWarden to lokalny system wykrywania zagrożeń zaprojektowany do pracy w całości w sieci prywatnej, zapewniający klasyfikację zagrożeń bez korzystania z zewnętrznych interfejsów API podczas skanów.


1. Architektura skanowania lokalnego

Poleganie na zewnętrznych interfejsach API w zakresie wywiadu o zagrożeniach rodzi szereg wyzwań:

  • Ograniczanie liczby zapytań: Dostawcy chmurowi mogą ograniczać częstotliwość zapytań API, co powoduje opóźnienia przy skanowaniu dużych systemów plików.
  • Prywatność danych: Przesyłanie skrótów autorskiego oprogramowania lub wewnętrznych konfiguracji do podmiotu trzeciego może kolidować z politykami bezpieczeństwa organizacji i zgodnością z RODO.
  • Opóźnienia: Czas komunikacji sieciowej związany z zapytaniami API wydłuża całkowity czas skanu bezpieczeństwa.

2. Architektura Vigil

Vigil rozwiązuje te problemy, odzwierciedlając globalne źródła wywiadu o zagrożeniach w lokalnym, zoptymalizowanym środowisku.

Agregator (warstwa sterowania)

Warstwa sterowania StateWarden pobiera i przetwarza bazy danych ze standardowych źródeł informacji o zagrożeniach:

  1. OSV (Open Source Vulnerabilities): Dane o podatnościach pakietów oprogramowania (dpkg, rpm, pip, npm).
  2. NVD (National Vulnerability Database): Rządowe repozytorium USA standardowych danych o podatnościach (CVE).
  3. MalwareBazaar: Baza znanych skrótów złośliwych plików (SHA256).

StateWarden pobiera te dane JSON, deduplikuje je i przechowuje w bazie PostgreSQL w lokalnej warstwie sterowania.

Filtr Blooma (struktura pamięciowa)

Aby zoptymalizować szybkość wyszukiwania podczas aktywnego skanu, Vigil używa filtrów Blooma - probabilistycznej struktury danych.

Przy starcie usługa Vigil ładuje sygnatury złośliwego oprogramowania z bazy danych do filtru Blooma rezydującego w pamięci. Pozwala to sprawdzać złośliwe skróty z niskim opóźnieniem, bez wykonywania odczytów z dysku.

Skaner (Agent)

Gdy Artemis zaplanuje zadanie skanu, Agent StateWarden wykonuje następujące kroki:

  1. Zbieranie inwentarza: Agent kataloguje zainstalowane pakiety (np. za pomocą dpkg lub Rejestru Windows) i oblicza skróty SHA256 plików wykonywalnych.
  2. Transmisja lokalna: Agent wysyła ten „inwentarz JSON" bezpośrednio do lokalnej warstwy sterowania Artemis przez mTLS.
  3. Klasyfikacja: Vigil przetwarza ładunek, sprawdzając skróty względem filtru Blooma i dopasowując wersje pakietów do bazy CVE.

Cały proces odbywa się w sieci prywatnej, bez przesyłania danych na zewnątrz.

3. Raportowanie i zarządzanie

Vigil jest zintegrowany z panelem StateWarden Dashboard za pośrednictwem dwóch stron: Krajobraz zagrożeń i Klasyfikacja podatności.

Krajobraz zagrożeń (/security-dashboard)

Strona Krajobraz zagrożeń zapewnia widok bieżącej postawy bezpieczeństwa w skali całej floty:

  • Wskaźniki KPI floty: Zagregowane metryki, takie jak aktywne zagrożenia, rozkład ważności i wolumen skanów w wybranym zakresie czasu.
  • Wykresy zagrożeń: Wykresy szeregów czasowych wykryć podatności i złośliwego oprogramowania, przepustowości silnika oraz tempa remediacji.
  • Rejestr zdarzeń: 30-dniowa historia aktywności skanów i statusów alertów dla każdego dnia.
  • Urządzenia priorytetowe: Urządzenia uszeregowane według bieżącego wyniku ryzyka, z bezpośrednią nawigacją do ich wykryć.
  • Generowanie raportów: Raporty bezpieczeństwa PDF na żądanie, obejmujące cały Realm lub pojedyncze wybrane urządzenie.

Klasyfikacja podatności (/triage)

Strona Klasyfikacja podatności to interfejs wsparcia decyzji dla poszczególnych wykryć:

  • Zakładki: Wykrycia są zorganizowane w zakładki AKTYWNE, ROZWIĄZANE / ZIGNOROWANE oraz REGUŁY WYKLUCZEŃ.
  • Ocena ryzyka: Wykrycia są mapowane na poziomy ważności CVSS (Common Vulnerability Scoring System) w skali od 0,0 do 10,0.
  • Kontekst urządzenia: Wykrycia można wyświetlać jako listę płaską lub pogrupowaną według urządzeń, z pokazaniem konkretnych urządzeń fizycznych lub wirtualnych powiązanych z każdym wykryciem.
  • Klasyfikacja zbiorcza: Administratorzy mogą zastosować decyzje klasyfikacji do wielu zaznaczonych wykryć jednocześnie oraz wyeksportować listę wykryć do formatu CSV.
  • Zarządzanie wykluczeniami: Administratorzy mogą wykluczać wybrane wykrycia (np. wyniki fałszywie pozytywne), tworząc reguły wykluczeń, z których każda wymaga udokumentowanego uzasadnienia. Silnik Vigil ignoruje wykluczone wykrycia w kolejnych skanach. Zastosowanie decyzji klasyfikacji i tworzenie reguł wykluczeń wymaga uprawnienia vigil.triage_risks.

Urządzenia, które nigdy nie były skanowane, są wyświetlane z neutralnym statusem ryzyka „Brak danych" zamiast wyniku ważności.

4. Śledzenie remediacji

Vigil aktualizuje swój status wraz ze zmianami w systemie.

Gdy podatny pakiet zostanie załatany na serwerze, Agent StateWarden kataloguje zaktualizowaną wersję pakietu podczas kolejnego skanu. Vigil rejestruje aktualizację, weryfikuje, że dana podatność CVE została rozwiązana, i automatycznie aktualizuje status w Dashboard.

Czy ten artykuł był pomocny?