Migrowanie reguł wykrywania QRadar do usługi Microsoft Sentinel
W tym artykule opisano sposób identyfikowania, porównywania i migrowania reguł wykrywania QRadar do wbudowanych reguł usługi Microsoft Sentinel.
Identyfikowanie i migrowanie reguł
Usługa Microsoft Sentinel używa analizy uczenia maszynowego do tworzenia zdarzeń o wysokiej wierności i możliwości działania, a niektóre istniejące wykrycia mogą być nadmiarowe w usłudze Microsoft Sentinel. W związku z tym nie przeprowadzaj ślepej migracji wszystkich reguł wykrywania i analizy. Zapoznaj się z tymi zagadnieniami, aby zidentyfikować istniejące reguły wykrywania.
- Pamiętaj, aby wybrać przypadki użycia, które uzasadniają migrację reguł, biorąc pod uwagę priorytet biznesowy i wydajność.
- Sprawdź, czy rozumiesz typy reguł usługi Microsoft Sentinel.
- Sprawdź, czy rozumiesz terminologię dotyczącą reguł.
- Przejrzyj wszystkie reguły, które nie wyzwoliły żadnych alertów w ciągu ostatnich 6–12 miesięcy, i ustal, czy są one nadal istotne.
- Wyeliminuj zagrożenia niskiego poziomu lub alerty, które rutynowo ignorujesz.
- Użyj istniejących funkcji i sprawdź, czy wbudowane reguły analizy usługi Microsoft Sentinel mogą dotyczyć bieżących przypadków użycia. Ponieważ usługa Microsoft Sentinel używa analizy uczenia maszynowego do tworzenia zdarzeń o wysokiej wierności i z możliwością działania, prawdopodobnie niektóre istniejące wykrycia nie będą już wymagane.
- Potwierdź połączone źródła danych i przejrzyj metody połączenia danych. Ponownie zajmij się konwersacjami zbierania danych, aby zapewnić głębokość i szerokość danych w różnych przypadkach użycia, które mają być wykrywane.
- Zapoznaj się z zasobami społeczności, takimi jak witryna Marketplace wykrywania zagrożeń SOC Prime, aby sprawdzić, czy reguły są dostępne.
- Zastanów się, czy konwerter zapytań online, taki jak Uncoder.io, może działać w przypadku reguł.
- Jeśli reguły nie są dostępne lub nie można ich przekonwertować, należy je utworzyć ręcznie przy użyciu zapytania KQL. Przejrzyj mapowanie reguł, aby utworzyć nowe zapytania.
Dowiedz się więcej o najlepszych rozwiązaniach dotyczących migrowania reguł wykrywania.
Aby przeprowadzić migrację reguł analizy do usługi Microsoft Sentinel:
Sprawdź, czy masz system testowania dla każdej reguły, którą chcesz migrować.
Przygotuj proces weryfikacji dla zmigrowanych reguł, w tym scenariusze i skrypty pełnego testu.
Upewnij się, że zespół ma przydatne zasoby do testowania migrowanych reguł.
Upewnij się, że masz połączone wymagane źródła danych i przejrzyj metody połączenia danych.
Sprawdź, czy twoje wykrycia są dostępne jako wbudowane szablony w usłudze Microsoft Sentinel:
Jeśli wbudowane reguły są wystarczające, użyj wbudowanych szablonów reguł, aby utworzyć reguły dla własnego obszaru roboczego.
W usłudze Microsoft Sentinel przejdź do karty Szablony reguł analizy konfiguracji > > i utwórz i zaktualizuj każdą odpowiednią regułę analizy.
Aby uzyskać więcej informacji, zobacz Tworzenie zaplanowanych reguł analizy na podstawie szablonów.
Jeśli masz wykrycia, które nie są objęte wbudowanymi regułami usługi Microsoft Sentinel, wypróbuj konwerter zapytań online, taki jak Uncoder.io , aby przekonwertować zapytania na język KQL.
Zidentyfikuj warunek wyzwalacza i akcję reguły, a następnie skonstruuj i przejrzyj zapytanie KQL.
Jeśli ani wbudowane reguły, ani konwerter reguł online nie są wystarczające, musisz ręcznie utworzyć regułę. W takich przypadkach wykonaj następujące kroki, aby rozpocząć tworzenie reguły:
Zidentyfikuj źródła danych, których chcesz użyć w regule. Chcesz utworzyć tabelę mapowania między źródłami danych i tabelami danych w usłudze Microsoft Sentinel, aby zidentyfikować tabele, których chcesz wykonać zapytanie.
Zidentyfikuj wszystkie atrybuty, pola lub jednostki w danych, które mają być używane w regułach.
Zidentyfikuj kryteria i logikę reguły. Na tym etapie możesz użyć szablonów reguł jako przykładów do konstruowania zapytań języka KQL.
Rozważ filtry, reguły korelacji, aktywne listy, zestawy odwołań, listy kontrolne, anomalie wykrywania, agregacje itd. Możesz użyć odwołań dostarczonych przez starsze rozwiązanie SIEM, aby zrozumieć , jak najlepiej mapować składnię zapytań.
Zidentyfikuj warunek wyzwalacza i akcję reguły, a następnie skonstruuj i przejrzyj zapytanie KQL. Podczas przeglądania zapytania rozważ zasoby wskazówek dotyczących optymalizacji języka KQL.
Przetestuj regułę przy użyciu każdego z odpowiednich przypadków użycia. Jeśli nie podasz oczekiwanych wyników, możesz przejrzeć język KQL i przetestować go ponownie.
Jeśli masz pewność, że reguła została zmigrowana, możesz rozważyć jej zmigrowanie. Utwórz podręcznik dla akcji reguły zgodnie z potrzebami. Aby uzyskać więcej informacji, zobacz artykuł Automatyzowanie reagowania na zagrożenia za pomocą podręczników w usłudze Microsoft Sentinel.
Dowiedz się więcej o regułach analizy:
- Reguły zaplanowanej analizy w usłudze Microsoft Sentinel. Grupowanie alertów umożliwia zmniejszenie zmęczenia alertów przez grupowanie alertów występujących w danym przedziale czasu.
- Mapowanie pól danych na jednostki w usłudze Microsoft Sentinel w celu umożliwienia inżynierom SOC definiowania jednostek w ramach dowodów do śledzenia podczas badania. Mapowanie jednostek umożliwia również analitykom SOC korzystanie z intuicyjnego wykresu badania (zbadaj przypadki.md#use-the-investigation-graph-to-deep-dive), co może pomóc skrócić czas i nakład pracy.
- Zbadaj zdarzenia przy użyciu danych UEBA, jako przykład użycia dowodów do wyświetlania zdarzeń, alertów i wszystkich zakładek skojarzonych z konkretnym zdarzeniem w okienku podglądu incydentu.
- język zapytań Kusto (KQL), których można użyć do wysyłania żądań tylko do odczytu do bazy danych usługi Log Analytics w celu przetwarzania danych i zwracania wyników. Język KQL jest również używany w innych usługi firmy Microsoft, takich jak Ochrona punktu końcowego w usłudze Microsoft Defender i Application Insights.
Porównanie terminologii dotyczącej reguł
Ta tabela ułatwia wyjaśnienie koncepcji reguły w usłudze Microsoft Sentinel w porównaniu z usługą QRadar.
QRadar | Microsoft Sentinel | |
---|---|---|
Typ reguły | •Zdarzenia •Płynąć •Wspólny •Przestępstwo • Reguły wykrywania anomalii |
• Zaplanowane zapytanie •Fuzja • Zabezpieczenia firmy Microsoft • Analiza zachowań uczenia maszynowego |
Kryteria | Definiowanie w warunku testu | Definiowanie w języku KQL |
Warunek wyzwalacza | Definiowanie w regule | Próg: liczba wyników zapytania |
Akcja | • Tworzenie przestępstwa • Wyślij nowe zdarzenie • Dodawanie do zestawu odwołań lub danych • I więcej |
• Tworzenie alertu lub zdarzenia • Integruje się z usługą Logic Apps |
Mapuj i porównaj przykłady reguł
Skorzystaj z tych przykładów, aby porównać i mapować reguły z usługi QRadar do usługi Microsoft Sentinel w różnych scenariuszach.
Składnia typowych testów właściwości
Oto składnia QRadar dla wspólnej reguły testów właściwości.
Typowe testy właściwości: przykład wyrażenia regularnego (QRadar)
Oto składnia przykładowej reguły testów właściwości wspólnych QRadar, która używa wyrażenia regularnego:
when any of <these properties> match <this regular expression>
Oto przykładowa reguła w narzędziu QRadar.
Typowe testy właściwości: przykład wyrażenia regularnego (KQL)
Oto reguła typowych testów właściwości z wyrażeniem regularnym w języku KQL.
CommonSecurityLog
| where tostring(SourcePort) matches regex @"\d{1,5}" or tostring(DestinationPort) matches regex @"\d{1,5}"
Typowe testy właściwości: przykład zapytania filtru AQL (QRadar)
Oto składnia przykładowej reguły testów właściwości wspólnych QRadar, która używa zapytania filtru AQL.
when the event matches <this> AQL filter query
Oto przykładowa reguła w narzędziu QRadar.
Typowe testy właściwości: przykład zapytania filtru AQL (KQL)
Oto reguła typowych testów właściwości z zapytaniem filtru AQL w języku KQL.
CommonSecurityLog
| where SourceIP == '10.1.1.10'
Typowe testy właściwości: równa się/nie jest równa przykładowi (QRadar)
Oto składnia przykładowej reguły testów właściwości wspólnych QRadar używającej equals
operatora or not equals
.
and when <this property> <equals/not equals> <this property>
Oto przykładowa reguła w narzędziu QRadar.
Typowe testy właściwości: równa się/nie jest równa przykładowi (KQL)
Oto reguła typowych testów właściwości z operatorem equals
or not equals
w języku KQL.
CommonSecurityLog
| where SourceIP == DestinationIP
Składnia testów daty/godziny
Oto składnia QRadar dla reguły testów daty/godziny.
Testy daty/godziny: wybrany dzień przykładu miesiąca (QRadar)
Oto składnia przykładowej reguły testów daty/godziny QRadar, która używa wybranego dnia miesiąca.
and when the event(s) occur <on/after/before> the <selected> day of the month
Oto przykładowa reguła w narzędziu QRadar.
Testy daty/godziny: wybrany dzień przykładu miesiąca (KQL)
Oto reguła testów daty/godziny z wybranym dniem miesiąca w języku KQL.
SecurityEvent
| where dayofmonth(TimeGenerated) < 4
Testy daty/godziny: wybrany dzień tygodnia (QRadar)
Oto składnia przykładowej reguły testów daty/godziny QRadar, która używa wybranego dnia tygodnia:
and when the event(s) occur on any of <these days of the week{Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday}>
Oto przykładowa reguła w narzędziu QRadar.
Testy daty/godziny: wybrany dzień przykładu tygodnia (KQL)
Oto reguła testów daty/godziny z wybranym dniem tygodnia w języku KQL.
SecurityEvent
| where dayofweek(TimeGenerated) between (3d .. 5d)
Testy daty/godziny: after/before/at example (QRadar)
Oto składnia przykładowej reguły testów daty/godziny QRadar używającej after
operatora , before
lub at
.
and when the event(s) occur <after/before/at> <this time{12.00AM, 12.05AM, ...11.50PM, 11.55PM}>
Oto przykładowa reguła w narzędziu QRadar.
Testy daty/godziny: after/before/at example (KQL)
Oto reguła testów daty/godziny, która używa after
operatora , before
lub at
w języku KQL.
SecurityEvent
| where format_datetime(TimeGenerated,'HH:mm')=="23:55"
TimeGenerated
jest w formacie UTC/GMT.
Składnia testów właściwości zdarzeń
Oto składnia QRadar dla reguły testów właściwości zdarzeń.
Testy właściwości zdarzeń: przykład protokołu IP (QRadar)
Oto składnia przykładowej reguły testów właściwości zdarzeń QRadar używającej protokołu IP.
and when the IP protocol is one of the following <protocols>
Oto przykładowa reguła w narzędziu QRadar.
Testy właściwości zdarzeń: przykład protokołu IP (KQL)
CommonSecurityLog
| where Protocol in ("UDP","ICMP")
Testy właściwości zdarzeń: przykład ciągu ładunku zdarzenia (QRadar)
Oto składnia przykładowej reguły testów właściwości zdarzeń QRadar, która używa Event Payload
wartości ciągu.
and when the Event Payload contains <this string>
Oto przykładowa reguła w narzędziu QRadar.
Testy właściwości zdarzeń: przykład ciągu ładunku zdarzeń (KQL)
CommonSecurityLog
| where DeviceVendor has "Palo Alto"
search "Palo Alto"
Aby zoptymalizować wydajność, unikaj używania search
polecenia , jeśli znasz już nazwę tabeli.
Funkcje: składnia liczników
Oto składnia QRadar dla reguły funkcji, która używa liczników.
Liczniki: właściwość zdarzenia i przykład czasu (QRadar)
Oto składnia przykładowej reguły funkcji QRadar, która używa zdefiniowanej liczby właściwości zdarzeń w zdefiniowanej liczbie minut.
and when at least <this many> events are seen with the same <event properties> in <this many> <minutes>
Oto przykładowa reguła w narzędziu QRadar.
Liczniki: przykład właściwości zdarzenia i czasu (KQL)
CommonSecurityLog
| summarize Count = count() by SourceIP, DestinationIP
| where Count >= 5
Funkcje: składnia warunków ujemnych
Oto składnia QRadar dla reguły funkcji, która używa warunków negatywnych.
Przykład warunków negatywnych (QRadar)
Oto składnia przykładowej reguły funkcji QRadar, która używa warunków negatywnych.
and when none of <these rules> match in <this many> <minutes> after <these rules> match with the same <event properties>
Poniżej przedstawiono dwie zdefiniowane reguły w narzędziu QRadar. Negatywne warunki będą oparte na tych regułach.
Oto przykład reguły warunków negatywnych na podstawie powyższych reguł.
Przykład warunków ujemnych (KQL)
let spanoftime = 10m;
let Test2 = (
CommonSecurityLog
| where Protocol !in ("UDP","ICMP")
| where TimeGenerated > ago(spanoftime)
);
let Test6 = (
CommonSecurityLog
| where SourceIP == DestinationIP
);
Test2
| join kind=rightanti Test6 on $left. SourceIP == $right. SourceIP and $left. Protocol ==$right. Protocol
Funkcje: prosta składnia warunków
Oto składnia QRadar dla reguły funkcji, która używa prostych warunków.
Przykład prostych warunków (QRadar)
Oto składnia przykładowej reguły funkcji QRadar, która używa prostych warunków.
and when an event matches <any|all> of the following <rules>
Oto przykładowa reguła w narzędziu QRadar.
Przykład prostych warunków (KQL)
CommonSecurityLog
| where Protocol !in ("UDP","ICMP") or SourceIP == DestinationIP
Składnia testów adresów IP/portów
Oto składnia QRadar dla reguły testów adresów IP/portów.
Testy adresów IP/portów: przykład portu źródłowego (QRadar)
Oto składnia przykładowej reguły QRadar określająca port źródłowy.
and when the source port is one of the following <ports>
Oto przykładowa reguła w narzędziu QRadar.
Testy adresów IP/portów: przykład portu źródłowego (KQL)
CommonSecurityLog
| where SourcePort == 20
Testy adresów IP/portów: przykład źródłowego adresu IP (QRadar)
Oto składnia przykładowej reguły QRadar określającej źródłowy adres IP.
and when the source IP is one of the following <IP addresses>
Oto przykładowa reguła w narzędziu QRadar.
Testy adresów IP/portów: Przykład źródłowego adresu IP (KQL)
CommonSecurityLog
| where SourceIP in (“10.1.1.1”,”10.2.2.2”)
Składnia testów źródła dziennika
Oto składnia QRadar dla reguły testów źródła dziennika.
Przykład źródła dziennika (QRadar)
Oto składnia przykładowej reguły QRadar określającej źródła dzienników.
and when the event(s) were detected by one or more of these <log source types>
Oto przykładowa reguła w narzędziu QRadar.
Przykład źródła dziennika (KQL)
OfficeActivity
| where OfficeWorkload == "Exchange"
Następne kroki
W tym artykule przedstawiono sposób mapowania reguł migracji z usługi QRadar na usługę Microsoft Sentinel.