Obsługa wyników fałszywie dodatnich w usłudze Microsoft Sentinel

Reguły analizy usługi Microsoft Sentinel powiadamiają o wystąpieniu podejrzanego zdarzenia w sieci. Żadna reguła analizy nie jest idealna i musisz uzyskać kilka wyników fałszywie dodatnich, które wymagają obsługi. W tym artykule opisano sposób obsługi wyników fałszywie dodatnich przy użyciu automatyzacji lub modyfikowania zaplanowanych reguł analizy.

Fałszywie dodatnie przyczyny i zapobieganie

Nawet w poprawnie utworzonej regule analizy wyniki fałszywie dodatnie często wynikają z określonych jednostek, takich jak użytkownicy lub adresy IP, które powinny zostać wykluczone z reguły.

Typowe scenariusze obejmują:

  • Normalne działania niektórych użytkowników, zwykle jednostek usługi, pokazują wzorzec, który wydaje się podejrzany.
  • Celowe działanie skanowania zabezpieczeń pochodzące ze znanych adresów IP jest wykrywane jako złośliwe.
  • Reguła wykluczana z prywatnych adresów IP powinna również wykluczać niektóre wewnętrzne adresy IP, które nie są prywatne.

W tym artykule opisano dwie metody unikania wyników fałszywie dodatnich:

  • Reguły automatyzacji tworzą wyjątki bez modyfikowania reguł analizy.
  • Modyfikacje reguł analizy zaplanowanej umożliwiają bardziej szczegółowe i trwałe wyjątki.

W poniższej tabeli opisano cechy każdej metody:

Metoda Charakterystyka
Reguły automatyzacji
  • Można zastosować do kilku reguł analizy.
  • Zachowaj dziennik inspekcji. Wyjątki natychmiast i automatycznie zamykają utworzone zdarzenia, rejestrując przyczynę zamknięcia i komentarzy.
  • Są często generowane przez analityków.
  • Zezwalaj na stosowanie wyjątków przez ograniczony czas. Na przykład praca konserwacyjna może spowodować fałszywie dodatnie wyniki, które poza przedziałem czasu konserwacji będą prawdziwymi zdarzeniami.
Modyfikacje reguł analizy
  • Zezwalaj na zaawansowane wyrażenia logiczne i wyjątki oparte na podsieci.
  • Umożliwia korzystanie z list do obejrzenia w celu scentralizowanego zarządzania wyjątkami.
  • Zazwyczaj wymaga implementacji przez inżynierów usługi Security Operations Center (SOC).
  • Są najbardziej elastycznym i kompletnym rozwiązaniem fałszywie dodatnim, ale są bardziej złożone.

Dodawanie wyjątków przy użyciu reguł automatyzacji

Najprostszym sposobem dodania wyjątku jest dodanie reguły automatyzacji w przypadku wystąpienia zdarzenia fałszywie dodatniego.

Aby dodać regułę automatyzacji do obsługi wyników fałszywie dodatnich:

  1. W usłudze Microsoft Sentinel w obszarze Incydenty wybierz zdarzenie, dla którego chcesz utworzyć wyjątek.

  2. Wybierz pozycję Utwórz regułę automatyzacji.

  3. Na pasku bocznym Tworzenie nowej reguły automatyzacji opcjonalnie zmodyfikuj nową nazwę reguły, aby zidentyfikować wyjątek, a nie tylko nazwę reguły alertu.

  4. W obszarze Warunki opcjonalnie dodaj więcej nazw reguł analizy, aby zastosować wyjątek. Wybierz pole listy rozwijanej zawierające nazwę reguły analizy i wybierz więcej reguł analizy z listy.

  5. Pasek boczny przedstawia określone jednostki w bieżącym zdarzeniu, które mogły spowodować wynik fałszywie dodatni. Zachowaj sugestie automatyczne lub zmodyfikuj je, aby dostosować wyjątek. Można na przykład zmienić warunek adresu IP, aby zastosować go do całej podsieci.

    Zrzut ekranu przedstawiający sposób tworzenia reguły automatyzacji dla zdarzenia w usłudze Microsoft Sentinel.

  6. Po spełnieniu warunków możesz nadal definiować, co robi reguła:

    Zrzut ekranu przedstawiający sposób tworzenia i stosowania reguły automatyzacji w usłudze Microsoft Sentinel.

    • Reguła jest już skonfigurowana do zamykania zdarzenia spełniającego kryteria wyjątku.
    • Możesz zachować określoną przyczynę zamknięcia w taki sposób, jak to jest, lub zmienić go, jeśli inny powód jest bardziej odpowiedni.
    • Możesz dodać komentarz do automatycznie zamkniętego zdarzenia, który wyjaśnia wyjątek. Można na przykład określić, że zdarzenie pochodzi ze znanych działań administracyjnych.
    • Domyślnie reguła jest ustawiana na automatyczne wygasanie po 24 godzinach. To wygaśnięcie może być tym, co chcesz, i zmniejsza prawdopodobieństwo błędów fałszywie ujemnych. Jeśli potrzebujesz dłuższego wyjątku, ustaw opcję Wygaśnięcie reguły na później.
  7. Jeśli chcesz, możesz dodać więcej akcji. Możesz na przykład dodać tag do zdarzenia lub uruchomić podręcznik, aby wysłać wiadomość e-mail lub powiadomienie albo zsynchronizować się z systemem zewnętrznym.

  8. Wybierz pozycję Zastosuj , aby aktywować wyjątek.

Porada

Regułę automatyzacji można również utworzyć od podstaw bez rozpoczynania od zdarzenia. Wybierz pozycję Automatyzacja z menu nawigacji po lewej stronie usługi Microsoft Sentinel, a następnie wybierz pozycję Utwórz>nową regułę. Dowiedz się więcej o regułach automatyzacji.

Dodawanie wyjątków przez modyfikowanie reguł analizy

Inną opcją implementacji wyjątków jest zmodyfikowanie zapytania reguły analizy. Wyjątki można uwzględnić bezpośrednio w regule lub najlepiej, jeśli to możliwe, użyć odwołania do listy do obejrzenia. Następnie możesz zarządzać listą wyjątków na liście do obejrzenia.

Modyfikowanie zapytania

Aby edytować istniejące reguły analizy, wybierz pozycję Automatyzacja z menu nawigacji po lewej stronie usługi Microsoft Sentinel. Wybierz regułę, którą chcesz edytować, a następnie wybierz pozycję Edytuj w prawym dolnym rogu, aby otworzyć Kreatora reguł analizy.

Aby uzyskać szczegółowe instrukcje dotyczące tworzenia i edytowania reguł analizy za pomocą Kreatora reguł analizy , zobacz Tworzenie niestandardowych reguł analizy w celu wykrywania zagrożeń.

Aby zaimplementować wyjątek w typowej regule, można dodać warunek podobny where IPAddress !in ('<ip addresses>') do początku zapytania reguły. Ten wiersz wyklucza określone adresy IP z reguły.

let timeFrame = 1d;
SigninLogs
| where TimeGenerated >= ago(timeFrame)
| where IPAddress !in ('10.0.0.8', '192.168.12.1')
...

Ten typ wyjątku nie jest ograniczony do adresów IP. Możesz wykluczyć określonych użytkowników przy użyciu UserPrincipalName pola lub wykluczyć określone aplikacje przy użyciu polecenia AppDisplayName.

Można również wykluczyć wiele atrybutów. Aby na przykład wykluczyć alerty z adresu 10.0.0.8 IP lub użytkownika user@microsoft.com, użyj polecenia :

| where IPAddress !in ('10.0.0.8')
| where UserPrincipalName != 'user@microsoft.com'

Aby zaimplementować bardziej precyzyjny wyjątek w razie potrzeby i zmniejszyć prawdopodobieństwo fałszywych ujemnych wartości, można połączyć atrybuty. Następujący wyjątek ma zastosowanie tylko wtedy, gdy obie wartości pojawiają się w tym samym alercie:

| where IPAddress != '10.0.0.8' and UserPrincipalName != 'user@microsoft.com'

Wykluczanie podsieci

Wykluczanie zakresów adresów IP używanych przez organizację wymaga wykluczenia podsieci. W poniższym przykładzie pokazano, jak wykluczyć podsieci.

Operator ipv4_lookup jest operatorem wzbogacania, a nie operatorem filtrowania. Linia where isempty(network) rzeczywiście wykonuje filtrowanie, sprawdzając te zdarzenia, które nie pokazują dopasowania.

let subnets = datatable(network:string) [ "111.68.128.0/17", "5.8.0.0/19", ...];
let timeFrame = 1d;
SigninLogs
| where TimeGenerated >= ago(timeFrame)
| evaluate ipv4_lookup(subnets, IPAddress, network, return_unmatched = true)
| where isempty(network)
...

Zarządzanie wyjątkami za pomocą list obserwowanych

Lista obserwowanych umożliwia zarządzanie listą wyjątków poza samą regułą. Jeśli ma to zastosowanie, to rozwiązanie ma następujące zalety:

  • Analityk może dodawać wyjątki bez edytowania reguły, co lepiej jest zgodne z najlepszymi rozwiązaniami SOC.
  • Ta sama lista do obejrzenia może mieć zastosowanie do kilku reguł, co umożliwia centralne zarządzanie wyjątkami.

Użycie listy do obejrzenia jest podobne do użycia wyjątku bezpośredniego. Użyj polecenia _GetWatchlist('<watchlist name>') , aby wywołać listę obserwowanych:

let timeFrame = 1d;
let logonDiff = 10m;
let allowlist = (_GetWatchlist('ipallowlist') | project IPAddress);
SigninLogs
| where TimeGenerated >= ago(timeFrame)
| where IPAddress !in (allowlist)
...

Filtrowanie podsieci można również wykonać przy użyciu listy do obejrzenia. Na przykład w poprzednim kodzie wykluczenia podsieci można zastąpić definicję podsieci datatable listą obserwowaną:

let subnets = _GetWatchlist('subnetallowlist');

Następne kroki

Aby uzyskać więcej informacji, zobacz: