Udostępnij za pośrednictwem


Schematy zaawansowanego modelu informacji o zabezpieczeniach (ASIM)

Schemat ASIM (Advanced Security Information Model) to zestaw pól reprezentujących działanie lub jednostkę. Użycie pól ze znormalizowanego schematu w zapytaniu gwarantuje, że zapytanie działa z każdym znormalizowanym źródłem.

Aby zrozumieć, jak schematy mieszczą się w architekturze ASIM, zapoznaj się z diagramem architektury ASIM.

Schematy działań/zdarzeń

Odwołania do schematu przedstawiają pola składające się z każdego schematu. Obecnie usługa ASIM definiuje następujące schematy zdarzeń:

Schematu Nazwa schematu dla testów Wersja Stan
Zdarzenie alertu AlertEvent 0.1 GA
Zdarzenie inspekcji AuditEvent 0.1.2 GA
Zdarzenie uwierzytelniania Authentication 0.1.4 GA
Działanie DHCP DhcpEvent 0.1.1 GA
Działanie DNS Dns 0.1.7 GA
Działanie pliku FileEvent 0.2.2 GA
Sesja sieciowa NetworkSession 0.2.7 GA
Zdarzenie procesu ProcessEvent 0.1.4 GA
Zdarzenie rejestru RegistryEvent 0.1.3 GA
Zarządzanie użytkownikami UserManagement 0.1.2 GA
Sesja internetowa WebSession 0.2.7 GA

Schematy jednostek

Obecnie usługa ASIM definiuje następujące schematy dla jednostek:

Schematu Nazwa schematu dla testów Wersja Stan
Jednostka zasobu AssetEntity 0.1.0 GA

W przypadku jednostek, które są częścią innych schematów ASIM, zapoznaj się z tematem Jednostki zdarzeń.

Nazewnictwo pól

Podstawą każdego schematu są jego nazwy pól. Nazwy pól należą do następujących grup:

  • Pola wspólne dla wszystkich schematów.
  • Pola specyficzne dla schematu.
  • Pola reprezentujące jednostki, takie jak użytkownicy, które biorą udział w schemacie. Pola reprezentujące jednostki są podobne w schematach.

Jeśli źródła mają pola, które nie są prezentowane w udokumentowanym schemacie, są one normalizowane w celu zachowania spójności. Jeśli dodatkowe pola reprezentują jednostkę, są one normalizowane na podstawie wytycznych dotyczących pól jednostki. W przeciwnym razie schematy dążą do zachowania spójności we wszystkich schematach.

Na przykład dzienniki aktywności serwera DNS nie dostarczają informacji o użytkowniku, ale dzienniki aktywności DNS z punktu końcowego mogą zawierać informacje o użytkowniku, które można znormalizować zgodnie z wytycznymi jednostki użytkownika.

Typowe pola

Niektóre pola są wspólne dla wszystkich schematów ASIM. Każdy schemat może dodać wytyczne dotyczące używania niektórych typowych pól w kontekście określonego schematu. Na przykład dozwolone wartości pola EventType mogą się różnić w zależności od schematu, podobnie jak wartość pola EventSchemaVersion .

Klasy pól

Pola mogą mieć kilka klas, które definiują, kiedy pola powinny zostać zaimplementowane przez analizator:

  • Pola obowiązkowe muszą być wyświetlane w każdym analizatorze. Jeśli źródło nie zawiera informacji o tej wartości lub nie można dodać danych w inny sposób, nie obsługuje większości elementów zawartości odwołujące się do znormalizowanego schematu.
  • Zalecane pola powinny być normalizowane, jeśli są dostępne. Jednak mogą nie być dostępne w każdym źródle. Każdy element zawartości odwołujące się do znormalizowanego schematu powinien uwzględniać dostępność.
  • Opcjonalne pola, jeśli są dostępne, można znormalizować lub pozostawić w oryginalnym formularzu. Zazwyczaj minimalny analizator nie normalizuje ich ze względu na wydajność.
  • Pola warunkowe są obowiązkowe, jeśli pole, które obserwują, jest wypełnione. Pola warunkowe są zwykle używane do opisywania wartości w innym polu. Na przykład pole wspólne DvcIdType opisuje wartość int pola wspólnego DvcId i dlatego jest obowiązkowe, jeśli ten ostatni jest wypełniony.
  • Alias jest specjalnym typem pola warunkowego i jest obowiązkowy, jeśli pole aliasowane jest wypełnione.

Jednostki zdarzeń

Zdarzenia ewoluują wokół jednostek, takich jak użytkownicy, hosty, procesy lub pliki. Każda jednostka może wymagać kilku pól, aby ją opisać. Na przykład host może mieć nazwę i adres IP.

Pojedynczy rekord może zawierać wiele jednostek tego samego typu, takich jak host źródłowy i docelowy.

Usługa ASIM definiuje sposób spójnego opisywania jednostek, a jednostki umożliwiają rozszerzanie schematów.

Na przykład chociaż schemat sesji sieciowej nie zawiera informacji o procesie, niektóre źródła zdarzeń udostępniają informacje o procesie, które można dodać. Aby uzyskać więcej informacji, zobacz Jednostki.

Aby włączyć funkcjonalność jednostki, reprezentacja jednostki ma następujące wytyczne:

Wytyczne Opis
Prefiksy i aliasy Ponieważ pojedyncze zdarzenie często zawiera więcej niż jedną jednostkę tego samego typu, na przykład hosty źródłowe i docelowe, prefiksy są używane do identyfikowania jednostki, z którą jest skojarzone pole.

Aby zachować normalizację, usługa ASIM używa małego zestawu standardowych prefiksów, wybierając najbardziej odpowiednie dla określonej roli jednostek.

Jeśli pojedyncza jednostka typu jest istotna dla zdarzenia, nie ma potrzeby używania prefiksu. Ponadto zestaw pól bez prefiksu aliasów jest najczęściej używaną jednostką dla każdego typu.
Identyfikatory i typy Znormalizowany schemat umożliwia użycie kilku identyfikatorów dla każdej jednostki, które mają współistnieć w zdarzeniach. Jeśli zdarzenie źródłowe ma inne identyfikatory jednostek, których nie można zamapować na znormalizowany schemat, pozostaw je w formularzu źródłowym lub użyj pola dynamicznego AdditionalFields .

Aby zachować informacje o typie identyfikatorów, zapisz typ , jeśli ma zastosowanie, w polu o tej samej nazwie i sufiksie Typu. Na przykład UserIdType.
Atrybuty Jednostki często mają inne atrybuty, które nie służą jako identyfikator i mogą być również kwalifikowane za pomocą deskryptora. Jeśli na przykład użytkownik źródłowy ma informacje o domenie, znormalizowane pole to SrcUserDomain.

Aby uzyskać więcej informacji na temat określonych typów jednostek, zobacz:

Aby uzyskać więcej informacji na temat pełnych schematów jednostek, zobacz:

Aliasy

Aliasy zezwalają na wiele nazw dla określonej wartości. W niektórych przypadkach różni użytkownicy oczekują, że pole będzie miało różne nazwy. Na przykład w terminologii DNS można oczekiwać pola o nazwie DnsQuery, podczas gdy bardziej ogólnie zawiera nazwę domeny. Alias Domena pomaga użytkownikowi, zezwalając na używanie obu nazw.

Uwaga

Aliasy mają pomóc analitykowi w wykonywaniu interakcyjnych zapytań. W przypadku używania zapytań w zawartości wielokrotnego użytku, takiej jak wykrywanie niestandardowe, reguły analityczne lub skoroszyty, użyj pola aliasu, a nie aliasu. Użycie pola aliasowanego zapewnia lepszą wydajność, mniejszą ilość błędów i lepszą czytelność zapytań.

W niektórych przypadkach alias może mieć wartość jednego z kilku pól, w zależności od tego, które wartości są dostępne w zdarzeniu. Na przykład alias dvc , aliasy pól DvcFQDN, DvcId, DvcHostname lub DvcIpAddr lub Event Product . Jeśli alias może mieć kilka wartości, jego typ musi być ciągiem, aby pomieścić wszystkie możliwe wartości aliasu. W związku z tym podczas przypisywania wartości do takiego aliasu należy przekonwertować typ na ciąg przy użyciu ciągu funkcji KQL.

Natywne znormalizowane tabele nie zawierają aliasów, ponieważ oznaczałyby one zduplikowany magazyn danych. Zamiast tego analizatory wycinków dodają aliasy. Aby zaimplementować aliasy w analizatorach, utwórz kopię oryginalnej wartości przy użyciu extend operatora .

Typy logiczne

Każde pole schematu ma typ. Obszar roboczy usługi Log Analytics ma ograniczony zestaw typów danych. Z tego powodu Microsoft Sentinel używa typu logicznego dla wielu pól schematu, których usługa Log Analytics nie wymusza, ale jest wymagana dla zgodności schematu. Typy pól logicznych zapewniają spójność zarówno wartości, jak i nazw pól w różnych źródłach.

Typ danych Typ fizyczny Format i wartość
Boolean Bool Użyj wbudowanego typu danych KQL bool , a nie liczbowej lub ciągowej reprezentacji wartości logicznych.
Wyliczane Ciąg Lista wartości jawnie zdefiniowanych dla pola. Definicja schematu zawiera listę zaakceptowanych wartości.
Data/godzina W zależności od możliwości metody pozyskiwania użyj dowolnej z następujących reprezentacji fizycznych w priorytetach malejących:

— Wbudowany typ daty/godziny usługi Log Analytics
— Pole liczby całkowitej korzystające z reprezentacji liczbowej daty/godziny usługi Log Analytics.
- Pole ciągu używające reprezentacji liczbowej daty/godziny usługi Log Analytics
— Pole ciągu przechowujące obsługiwany format daty/godziny usługi Log Analytics.
Reprezentacja daty i godziny usługi Log Analytics jest podobna, ale inna niż reprezentacja czasu unix. Aby uzyskać więcej informacji, zobacz wytyczne dotyczące konwersji.

Uwaga: jeśli ma to zastosowanie, czas powinien być dostosowany do strefy czasowej.
Adres MAC Ciąg Colon-Hexadecimal notacji.
Adres IP Ciąg Microsoft Sentinel schematy nie mają oddzielnych adresów IPv4 i IPv6. Dowolne pole adresu IP może zawierać adres IPv4 lub adres IPv6 w następujący sposób:

- Protokół IPv4 w notacji kropek dziesiętnych.
- IPv6 w notacji 8-hextets, co pozwala na krótką formę.

Przykład:
- IPv4: 192.168.10.10
- IPv6: FEDC:BA98:7654:3210:FEDC:BA98:7654:3210
- Krótki formularz IPv6: 1080::8:800:200C:417A
FQDN Ciąg W pełni kwalifikowana nazwa domeny używająca notacji kropkowej, na przykład learn.microsoft.com. Aby uzyskać więcej informacji, zobacz jednostka Urządzenie.
Nazwa hosta Ciąg Nazwa hosta, która nie jest nazwą FQDN, zawiera maksymalnie 63 znaki, w tym litery, cyfry i łączniki. Aby uzyskać więcej informacji, zobacz jednostka Urządzenie.
Domain (Domena) Ciąg część domeny nazwy FQDN bez nazwy hosta, na przykład learn.microsoft.com. Aby uzyskać więcej informacji, zobacz jednostka Urządzenie.
Domaintype Wyliczane Typ domeny przechowywanej w polach domeny i nazwy FQDN. Aby uzyskać listę wartości i więcej informacji, zobacz Jednostka Urządzenie.
DvcIdType Wyliczane Typ identyfikatora urządzenia przechowywanego w polach DvcId. Aby uzyskać listę dozwolonych wartości i więcej informacji, zobacz DvcIdType.
Devicetype Wyliczane Typ urządzenia przechowywanego w polach DeviceType. Możliwe wartości obejmują:
- Computer
- Mobile Device
- IOT Device
- Other. Aby uzyskać więcej informacji, zobacz jednostka Urządzenie.
Nazwę użytkownika Ciąg Prawidłowa nazwa użytkownika w jednym z obsługiwanych typów. Aby uzyskać więcej informacji, zobacz jednostka Użytkownik.
Typ nazwy użytkownika Wyliczane Typ nazwy użytkownika przechowywany w polach nazwy użytkownika. Aby uzyskać więcej informacji i listę obsługiwanych wartości, zobacz Jednostka Użytkownik.
UserIdType Wyliczane Typ identyfikatora przechowywanego w polach identyfikatora użytkownika.

Obsługiwane wartości to SID, UIS, AADID, OktaId, AWSIdi PUID. Aby uzyskać więcej informacji, zobacz jednostka Użytkownik.
Usertype Wyliczane Typ użytkownika. Aby uzyskać więcej informacji i listę dozwolonych wartości, zobacz Jednostka Użytkownik.
Typ aplikacji Wyliczane Typ aplikacji. Aby uzyskać listę obsługiwanych wartości, zobacz Jednostka aplikacji.
Kraj Ciąg Ciąg korzystający z iso 3166-1, zgodnie z następującym priorytetem:

- Kody Alfa-2, takie jak US dla Stany Zjednoczone.
- Kody Alfa-3, takie jak USA dla Stany Zjednoczone.
- Krótka nazwa.

Listę kodów można znaleźć w witrynie internetowej Organizacji Międzynarodowych Standardów (ISO).
Region Ciąg Nazwa podziału kraju/regionu przy użyciu iso 3166-2.

Listę kodów można znaleźć w witrynie internetowej Organizacji Międzynarodowych Standardów (ISO).
Miasto Ciąg
Długość geograficzna Podwójne Reprezentacja współrzędnych ISO 6709 (podpisana liczba dziesiętna).
Szerokość geograficzna Podwójne Reprezentacja współrzędnych ISO 6709 (podpisana liczba dziesiętna).
MD5 Ciąg 32-szesnastkowe znaki.
SHA1 Ciąg 40-szesnastkowa liczba znaków.
SHA256 Ciąg 64-szesnastkowe znaki.
SHA512 Ciąg 128-szesnastkowa liczba znaków.
ConfidenceLevel Liczba całkowita Poziom ufności znormalizowany do zakresu od 0 do 100.
RiskLevel Liczba całkowita Poziom ryzyka znormalizowany do zakresu od 0 do 100.
SchemaVersion Ciąg Wersja schematu ASIM w formacie <major>.<minor>.<sub-minor>
DnsQueryClassName Ciąg Nazwa klasy DNS.
Nazwa użytkownika Ciąg Prosta nazwa użytkownika lub kwalifikowana nazwa użytkownika

Mapowanie przykładowej jednostki

W tej sekcji użyto zdarzenia systemu Windows 4624 jako przykładu do opisania sposobu normalizacji danych zdarzeń dla Microsoft Sentinel.

To zdarzenie ma następujące jednostki:

Terminologia firmy Microsoft Prefiks oryginalnego pola zdarzenia Prefiks pola ASIM Opis
Temat Subject Actor Użytkownik, który zgłosił informacje o pomyślnym zalogowaniu.
Nowe logowanie Target TargetUser Użytkownik, dla którego wykonano logowanie.
Proces - ActingProcess Proces, który próbował się zalogować.
Informacje o sieci - Src Maszyna, na której została wykonana próba logowania.

Na podstawie tych jednostek zdarzenie systemu Windows 4624 jest normalizowane w następujący sposób (niektóre pola są opcjonalne):

Pole znormalizowane Oryginalne pole Wartość w przykładzie Uwagi
ActorUserId SubjectUserSid S-1-5-18
ActorUserIdType - SID
ActorUserName SubjectDomainName\ SubjectUserName WORKGROUP\WIN-GG82ULGC9GO$ Skompilowany przez łączenie dwóch pól
ActorUserNameType - System Windows
ActorSessionId SubjectLogonId 0x3e7
TargetUserId TargetUserSid S-1-5-21-1377283216-344919071-3415362939-500
Userid TargetUserSid Alias
TargetUserIdType - SID
TargetUserName TargetDomainName\ TargetUserName Administrator\WIN-GG82ULGC9GO$ Skompilowany przez łączenie dwóch pól
Nazwa użytkownika TargetDomainName\ TargetUserName Alias
TargetUserNameType - System Windows
TargetSessionId TargetLogonId 0x8dcdc
ActingProcessName Nazwa procesu C:\Windows\System32\svchost.exe
ActingProcessId Processid 0x44c
SrcHostname Nazwa stacji roboczej System Windows
SrcIpAddr Ipaddress 127.0.0.1
SrcPortNumber IpPort 0
TargetHostname Komputerze WIN-GG82ULGC9GO
Hostname (Nazwa hosta) Komputerze Alias

Następne kroki

Ten artykuł zawiera omówienie normalizacji w Microsoft Sentinel i ASIM.

Więcej informacji można znaleźć w następujących artykułach: