Łączenie usługi Microsoft Sentinel z usługą Amazon Web Services w celu pozyskiwania danych dzienników usługi AWS
Łączniki usług Amazon Web Services (AWS) umożliwiają ściąganie dzienników usługi AWS do usługi Microsoft Sentinel. Te łączniki działają, udzielając usłudze Microsoft Sentinel dostępu do dzienników zasobów platformy AWS. Konfigurowanie łącznika ustanawia relację zaufania między usługami Amazon Web Services i Microsoft Sentinel. Jest to realizowane na platformie AWS przez utworzenie roli, która daje usłudze Microsoft Sentinel uprawnienia dostępu do dzienników platformy AWS.
Ten łącznik jest dostępny w dwóch wersjach: starszy łącznik do zarządzania cloudTrail i dzienniki danych oraz nowa wersja, która może pozyskiwać dzienniki z następujących usług AWS, ściągając je z zasobnika S3 (linki to dokumentacja platformy AWS):
- Dzienniki przepływu usługi Amazon Virtual Private Cloud (VPC) - VPC
- Amazon GuardDuty - Wyniki
- Zdarzenia zarządzania i danych w usłudze AWS CloudTrail -
- Dzienniki usługi CLOUDWatch w usłudze AWS CloudWatch -
Na tej karcie opisano sposób konfigurowania łącznika platformy AWS S3. Proces jego konfigurowania obejmuje dwie części: stronę platformy AWS i stronę usługi Microsoft Sentinel. Każdy proces strony generuje informacje używane przez drugą stronę. To dwukierunkowe uwierzytelnianie tworzy bezpieczną komunikację.
Wymagania wstępne
Upewnij się, że dzienniki z wybranej usługi AWS używają formatu zaakceptowanego przez usługę Microsoft Sentinel:
- Amazon VPC: .csv plik w formacie GZIP z nagłówkami; ogranicznik: spacja.
- Amazon GuardDuty: formaty json-line i GZIP.
- AWS CloudTrail: .json plik w formacie GZIP.
- CloudWatch: .csv plik w formacie GZIP bez nagłówka. Jeśli chcesz przekonwertować dzienniki na ten format, możesz użyć tej funkcji lambda CloudWatch.
Musisz mieć uprawnienia do zapisu w obszarze roboczym usługi Microsoft Sentinel.
Zainstaluj rozwiązanie Amazon Web Services z centrum zawartości w usłudze Microsoft Sentinel. Aby uzyskać więcej informacji, zobacz Odnajdywanie gotowej zawartości usługi Microsoft Sentinel i zarządzanie nią.
Omówienie architektury
Ta grafika i poniższy tekst przedstawiają sposób interakcji części tego rozwiązania łącznika.
Usługi AWS są skonfigurowane do wysyłania dzienników do zasobników magazynu S3 (Simple Storage Service).
Zasobnik S3 wysyła komunikaty powiadomień do kolejki komunikatów SQS (Simple Queue Service) za każdym razem, gdy odbiera nowe dzienniki.
Łącznik microsoft Sentinel AWS S3 sonduje kolejkę SQS w regularnych, częstych odstępach czasu. Jeśli w kolejce znajduje się komunikat, będzie on zawierać ścieżkę do plików dziennika.
Łącznik odczytuje komunikat ze ścieżką, a następnie pobiera pliki z zasobnika S3.
Aby nawiązać połączenie z kolejką SQS i zasobnikiem S3, usługa Microsoft Sentinel używa federacyjnego dostawcy tożsamości internetowej (Microsoft Entra ID) do uwierzytelniania za pomocą platformy AWS za pośrednictwem interfejsu OpenID Połączenie (OIDC) i przy założeniu roli IAM platformy AWS. Rola jest skonfigurowana przy użyciu zasad uprawnień, które dają jej dostęp do tych zasobów.
Połączenie łącznika S3
W środowisku platformy AWS:
Skonfiguruj usługi AWS w celu wysyłania dzienników do zasobnika S3.
Utwórz kolejkę simple queue service (SQS), aby dostarczyć powiadomienie.
Utwórz dostawcę tożsamości sieci Web w celu uwierzytelniania użytkowników na platformie AWS za pośrednictwem Połączenie OpenID (OIDC).
Utwórz przyjętą rolę w celu udzielenia uprawnień użytkownikom uwierzytelnianym przez dostawcę tożsamości sieci Web OIDC w celu uzyskania dostępu do zasobów platformy AWS.
Dołącz odpowiednie zasady uprawnień IAM, aby udzielić przejętego dostępu roli do odpowiednich zasobów (zasobnik S3, SQS).
Udostępniliśmy w naszym repozytorium GitHub skrypt, który automatyzuje stronę platformy AWS tego procesu. Zapoznaj się z instrukcjami dotyczącymi automatycznej konfiguracji w dalszej części tego dokumentu.
W usłudze Microsoft Sentinel:
- Włącz i skonfiguruj usługę AWS S3 Połączenie or w portalu usługi Microsoft Sentinel. Zapoznaj się z poniższymi instrukcjami.
Automatyczna konfiguracja
Aby uprościć proces dołączania, usługa Microsoft Sentinel udostępniła skrypt programu PowerShell umożliwiający zautomatyzowanie konfiguracji po stronie platformy AWS łącznika — wymaganych zasobów, poświadczeń i uprawnień platformy AWS.
Skrypt wykonuje następujące akcje:
Tworzy dostawcę tożsamości sieci Web OIDC w celu uwierzytelniania użytkowników usługi Microsoft Entra ID na platformie AWS.
Tworzy przypisaną rolę IAM z minimalnymi niezbędnymi uprawnieniami w celu udzielenia użytkownikom uwierzytelnianym przez funkcję OIDC dostępu do dzienników w danym zasobniku S3 i kolejce SQS.
Umożliwia określonym usługom AWS wysyłanie dzienników do tego zasobnika S3 i komunikatów powiadomień do tej kolejki SQS.
W razie potrzeby tworzy zasobnik S3 i kolejkę SQS w tym celu.
Konfiguruje wszelkie niezbędne zasady uprawnień IAM i stosuje je do utworzonej powyżej roli zarządzania dostępem i tożsamościami.
W przypadku chmur platformy Azure Government wyspecjalizowany skrypt tworzy innego dostawcę tożsamości sieci Web OIDC, do którego przypisuje przypisaną rolę IAM.
Wymagania wstępne dotyczące automatycznej konfiguracji
- Na maszynie musisz mieć program PowerShell i interfejs wiersza polecenia platformy AWS.
- Instrukcje dotyczące instalacji programu PowerShell
- Instrukcje dotyczące instalacji interfejsu wiersza polecenia platformy AWS (z dokumentacji platformy AWS)
Instrukcje
Aby uruchomić skrypt w celu skonfigurowania łącznika, wykonaj następujące kroki:
Z menu nawigacji usługi Microsoft Sentinel wybierz pozycję Łączniki danych.
Wybierz pozycję Amazon Web Services S3 z galerii łączników danych.
Jeśli łącznik nie jest widoczny, zainstaluj rozwiązanie Amazon Web Services z centrum zawartości w usłudze Microsoft Sentinel.
W okienku szczegółów łącznika wybierz pozycję Otwórz stronę łącznika.
W sekcji Konfiguracja poniżej 1. Skonfiguruj środowisko platformy AWS, rozwiń węzeł Konfiguracja za pomocą skryptu programu PowerShell (zalecane).
Postępuj zgodnie z instrukcjami wyświetlanymi na ekranie, aby pobrać i wyodrębnić skrypt instalacyjny usługi AWS S3 (link pobiera plik zip zawierający główny skrypt konfiguracji i skrypty pomocnika) ze strony łącznika.
Uwaga
W przypadku pozyskiwania dzienników platformy AWS do chmury platformy Azure Government pobierz i wyodrębnij ten wyspecjalizowany skrypt konfiguracji platformy AWS S3 Gov.
Przed uruchomieniem skryptu uruchom
aws configure
polecenie z poziomu wiersza polecenia programu PowerShell i wprowadź odpowiednie informacje w wierszu polecenia. Zobacz interfejs wiersza polecenia platformy AWS | Aby uzyskać szczegółowe informacje, podstawowe informacje dotyczące konfiguracji (z dokumentacji platformy AWS).Teraz uruchom skrypt. Skopiuj polecenie ze strony łącznika (w obszarze "Uruchom skrypt, aby skonfigurować środowisko") i wklej je w wierszu polecenia.
Skrypt wyświetli monit o wprowadzenie identyfikatora obszaru roboczego. Ten identyfikator zostanie wyświetlony na stronie łącznika. Skopiuj go i wklej go w wierszu polecenia skryptu.
Po zakończeniu działania skryptu skopiuj nazwę ARN roli i adres URL SQS z danych wyjściowych skryptu (zobacz przykład na pierwszym zrzucie ekranu poniżej) i wklej je w odpowiednich polach na stronie łącznika poniżej 2. Dodaj połączenie (zobacz drugi zrzut ekranu poniżej).
Wybierz typ danych z listy rozwijanej Tabela docelowa. Informuje to łącznik, który dzienniki usługi AWS są ustanawiane do zbierania i do którego tabeli usługi Log Analytics będą przechowywane pozyskane dane. Następnie wybierz pozycję Dodaj połączenie.
Uwaga
Uruchomienie skryptu może potrwać do 30 minut.
Konfiguracja ręczna
Firma Microsoft zaleca użycie skryptu automatycznej konfiguracji w celu wdrożenia tego łącznika. Jeśli z jakiegokolwiek powodu nie chcesz korzystać z tej wygody, wykonaj poniższe kroki, aby ręcznie skonfigurować łącznik.
- Przygotowywanie zasobów platformy AWS
- Tworzenie roli przyjętej przez platformę AWS i udzielanie dostępu do konta usługi AWS Sentinel
- Dodawanie informacji o roli i kolejce platformy AWS do łącznika danych S3
- Konfigurowanie usługi AWS do eksportowania dzienników do zasobnika S3
Przygotowywanie zasobów platformy AWS
Utwórz zasobnik S3, do którego będą dostarczane dzienniki z usług AWS — VPC, GuardDuty, CloudTrail lub CloudWatch.
- Zapoznaj się z instrukcjami dotyczącymi tworzenia zasobnika magazynu S3 w dokumentacji platformy AWS.
Utwórz standardową kolejkę komunikatów usługi Simple Queue Service (SQS), do której zasobnik S3 będzie publikować powiadomienia.
- Zapoznaj się z instrukcjami dotyczącymi tworzenia standardowej kolejki usługi Simple Queue Service (SQS) w dokumentacji platformy AWS.
Skonfiguruj zasobnik S3 w celu wysyłania komunikatów powiadomień do kolejki SQS.
- Zapoznaj się z instrukcjami dotyczącymi publikowania powiadomień w kolejce SQS w dokumentacji platformy AWS.
Instalowanie łącznika danych platformy AWS i przygotowywanie środowiska
W usłudze Microsoft Sentinel wybierz z menu nawigacji pozycję Łączniki danych.
Wybierz pozycję Amazon Web Services S3 z galerii łączników danych.
Jeśli łącznik nie jest widoczny, zainstaluj rozwiązanie Amazon Web Services z centrum zawartości w usłudze Microsoft Sentinel. Aby uzyskać więcej informacji, zobacz Odnajdywanie gotowej zawartości usługi Microsoft Sentinel i zarządzanie nią.
W okienku szczegółów łącznika wybierz pozycję Otwórz stronę łącznika.
W obszarze Konfiguracja rozwiń węzeł Konfiguracja za pomocą skryptu programu PowerShell (zalecane),a następnie skopiuj identyfikator zewnętrzny (identyfikator obszaru roboczego) do schowka.
Tworzenie dostawcy tożsamości internetowej open ID Połączenie (OIDC) i przyjętej roli platformy AWS
W innym oknie lub karcie przeglądarki otwórz konsolę platformy AWS.
Utwórz dostawcę tożsamości sieci Web. Postępuj zgodnie z tymi instrukcjami w dokumentacji platformy AWS:
Tworzenie dostawców tożsamości openID Połączenie (OIDC).Parametr Wybór/wartość Komentarze Client ID - Zignoruj to, masz go już. Zobacz wiersz odbiorców poniżej. Typ dostawcy OpenID Connect Zamiast domyślnego języka SAML. Adres URL dostawcy Handlowych: sts.windows.net/33e01921-4d64-4f8c-a055-5bdaffd5e33d/
Rząd:sts.windows.net/cab8a31a-1906-4287-a0d8-4eef66b95f6e/
Odcisk palca 626d44e704d1ceabe3bf0d53397464ac8080142c
Jeśli zostanie utworzona w konsoli zarządzania dostępem i tożsamościami, wybierz pozycję Pobierz odcisk palca, aby uzyskać ten wynik. Publiczności Handlowych: api://1462b192-27f7-4cb9-8523-0f4ecb54b47e
Rząd:api://d4230588-5f84-4281-a9c7-2c15194b28f7
Tworzenie roli przejętej przez zarządzanie dostępem i tożsamościami. Postępuj zgodnie z tymi instrukcjami w dokumentacji platformy AWS:
Tworzenie roli dla tożsamości internetowej lub federacji openID Połączenie.Parametr Wybór/wartość Komentarze Typ zaufanej jednostki Tożsamość sieci Web Zamiast domyślnej usługi AWS. Dostawca tożsamości Handlowych: sts.windows.net/33e01921-4d64-4f8c-a055-5bdaffd5e33d/
Rząd:sts.windows.net/cab8a31a-1906-4287-a0d8-4eef66b95f6e/
Dostawca utworzony w poprzednim kroku. Publiczności Handlowych: api://1462b192-27f7-4cb9-8523-0f4ecb54b47e
Rząd:api://d4230588-5f84-4281-a9c7-2c15194b28f7
Odbiorcy zdefiniowani dla dostawcy tożsamości w poprzednim kroku. Uprawnienia do przypisywania AmazonSQSReadOnlyAccess
AWSLambdaSQSQueueExecutionRole
AmazonS3ReadOnlyAccess
ROSAKMSProviderPolicy
- Dodatkowe zasady pozyskiwania różnych typów dzienników usługi AWS
Aby uzyskać informacje na temat tych zasad, zobacz odpowiednią stronę zasad uprawnień łącznika usługi AWS S3 w repozytorium GitHub usługi Microsoft Sentinel. Nazwa/nazwisko "OIDC_MicrosoftSentinelRole" Wybierz zrozumiałą nazwę zawierającą odwołanie do usługi Microsoft Sentinel.
Nazwa musi zawierać dokładny prefiksOIDC_
, w przeciwnym razie łącznik nie będzie działał prawidłowo.Edytuj zasady zaufania nowej roli i dodaj kolejny warunek:
"sts:RoleSessionName": "MicrosoftSentinel_{WORKSPACE_ID)"
Ważne
Wartość parametru
sts:RoleSessionName
musi mieć dokładny prefiksMicrosoftSentinel_
, w przeciwnym razie łącznik nie będzie działać poprawnie.Ukończone zasady zaufania powinny wyglądać następująco:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Federated": "arn:aws:iam::XXXXXXXXXXXX:oidc-provider/sts.windows.net/cab8a31a-1906-4287-a0d8-4eef66b95f6e/" }, "Action": "sts:AssumeRoleWithWebIdentity", "Condition": { "StringEquals": { "sts.windows.net/cab8a31a-1906-4287-a0d8-4eef66b95f6e/:aud": "api://d4230588-5f84-4281-a9c7-2c15194b28f7", "sts:RoleSessionName": "MicrosoftSentinel_XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX" } } } ] }
XXXXXXXXXXXX
to twój identyfikator konta platformy AWS.XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
to identyfikator obszaru roboczego usługi Microsoft Sentinel.
Zaktualizuj (zapisz) zasady po zakończeniu edycji.
Dodawanie informacji o roli i kolejce platformy AWS do łącznika danych S3
Na karcie przeglądarki otwórz konsolę platformy AWS, wprowadź usługę Identity and Access Management (IAM) i przejdź do listy Role. Wybierz utworzoną powyżej rolę.
Skopiuj usługę ARN do schowka.
Wprowadź usługę Simple Queue Service, wybierz utworzoną kolejkę SQS i skopiuj adres URL kolejki do schowka.
Wróć do karty przeglądarki usługi Microsoft Sentinel, która powinna być otwarta na stronie łącznika danych usługi Amazon Web Services S3 (wersja zapoznawcza ). Poniżej 2. Dodaj połączenie:
- Wklej rolę IAM ARN skopiowaną dwa kroki temu do roli, aby dodać pole.
- Wklej adres URL kolejki SQS skopiowanej w ostatnim kroku do pola Adres URL SQS.
- Wybierz typ danych z listy rozwijanej Tabela docelowa. Informuje to łącznik, który dzienniki usługi AWS są ustanawiane do zbierania i do którego tabeli usługi Log Analytics będą przechowywane pozyskane dane.
- Wybierz opcję Dodaj połączenie.
Konfigurowanie usługi AWS do eksportowania dzienników do zasobnika S3
Aby uzyskać instrukcje dotyczące wysyłania każdego typu dziennika do zasobnika S3, zobacz dokumentację usługi Amazon Web Services (połączoną poniżej):
Publikowanie dziennika przepływu VPC w zasobniku S3.
Uwaga
Jeśli zdecydujesz się dostosować format dziennika, musisz uwzględnić atrybut startowy , ponieważ jest on mapowany na pole TimeGenerated w obszarze roboczym usługi Log Analytics. W przeciwnym razie pole TimeGenerated zostanie wypełnione pozyskanym czasem zdarzenia, co nie opisuje dokładnie zdarzenia dziennika.
Wyeksportuj wyniki guardDuty do zasobnika S3.
Uwaga
W usłudze AWS wyniki są domyślnie eksportowane co 6 godzin. Dostosuj częstotliwość eksportowania dla zaktualizowanych aktywnych wyników na podstawie wymagań środowiska. Aby przyspieszyć proces, możesz zmodyfikować ustawienie domyślne, aby eksportować wyniki co 15 minut. Zobacz Ustawianie częstotliwości eksportowania zaktualizowanych aktywnych wyników.
Pole TimeGenerated jest wypełniane wartością aktualizacji znajdowania.
Trasy usługi AWS CloudTrail są domyślnie przechowywane w zasobnikach S3.
Wyeksportuj dane dziennika usługi CloudWatch do zasobnika S3.
Znane problemy i rozwiązywanie problemów
Znane problemy
Różne typy dzienników mogą być przechowywane w tym samym zasobniku S3, ale nie powinny być przechowywane w tej samej ścieżce.
Każda kolejka SQS powinna wskazywać jeden typ komunikatu, więc jeśli chcesz pozyskać wyniki guardDuty i dzienniki przepływu VPC, należy skonfigurować oddzielne kolejki dla każdego typu.
Podobnie jedna kolejka SQS może obsługiwać tylko jedną ścieżkę w zasobniku S3, więc jeśli z jakiegokolwiek powodu przechowujesz dzienniki w wielu ścieżkach, każda ścieżka wymaga własnej dedykowanej kolejki SQS.
Rozwiązywanie problemów
Dowiedz się, jak rozwiązywać problemy z łącznikiem usługi Amazon Web Services S3.
Następne kroki
W tym dokumencie przedstawiono sposób nawiązywania połączenia z zasobami platformy AWS w celu pozyskiwania dzienników do usługi Microsoft Sentinel. Aby dowiedzieć się więcej o usłudze Microsoft Sentinel, zobacz następujące artykuły: