Rozwiązywanie problemów z łącznikiem usługi AWS S3

Łącznik Usługi Amazon Web Services (AWS) S3 umożliwia pozyskiwanie dzienników usług AWS zebranych w zasobnikach AWS S3 do usługi Microsoft Sentinel. Obecnie obsługiwane typy dzienników to AWS CloudTrail, dzienniki przepływów VPC i AWS GuardDuty.

W tym artykule opisano sposób szybkiego identyfikowania przyczyny problemów występujących z łącznikiem platformy AWS S3, dzięki czemu można znaleźć kroki potrzebne do rozwiązania problemów.

Dowiedz się, jak połączyć usługę Microsoft Sentinel z usługami Amazon Web Services w celu pozyskiwania danych dziennika usługi AWS.

Usługa Microsoft Sentinel nie odbiera danych z łącznika usługi Amazon Web Services S3 ani jednego z jego typów danych

Dzienniki łącznika usługi AWS S3 (lub jednego z jego typów danych) nie są widoczne w obszarze roboczym usługi Microsoft Sentinel przez ponad 30 minut po nawiązaniu połączenia z łącznikiem.

Przed wyszukaniem przyczyny i rozwiązania zapoznaj się z następującymi zagadnieniami:

  • Od momentu nawiązania połączenia z łącznikiem do momentu pozyskania danych do obszaru roboczego może upłynąć około 20–30 minut.
  • Stan połączenia łącznika wskazuje, że istnieje reguła zbierania danych, ale nie wskazuje, że dane zostały pozyskane. Jeśli stan łącznika Usługi Amazon Web Services S3 jest zielony, istnieje reguła kolekcji dla jednego z typów danych, ale nadal nie ma danych.

Określanie przyczyny problemu

W tej sekcji omówiono następujące przyczyny:

  1. Zasady uprawnień łącznika AWS S3 nie są poprawnie skonfigurowane.
  2. Dane nie są pozyskiwane do zasobnika S3 na platformie AWS.
  3. Usługa SQS (Amazon Simple Queue Service) w chmurze platformy AWS nie odbiera powiadomień z zasobnika S3.
  4. Nie można odczytać danych z usługi SQS/S3 w chmurze platformy AWS. W przypadku dzienników guardDuty problem jest spowodowany nieprawidłowymi uprawnieniami usługi KMS.

Przyczyna 1. Zasady uprawnień łącznika platformy AWS S3 nie są prawidłowo ustawione

Ten problem jest spowodowany nieprawidłowymi uprawnieniami w środowisku platformy AWS.

Tworzenie zasad uprawnień

Aby wdrożyć łącznik danych AWS S3, wymagane są zasady uprawnień. Przejrzyj wymagane uprawnienia i ustaw odpowiednie uprawnienia.

Przyczyna 2. Odpowiednie dane nie istnieją w zasobniku S3

Odpowiednie dzienniki nie istnieją w zasobniku S3.

Rozwiązanie: wyszukaj dzienniki i w razie potrzeby wyeksportuj dzienniki

  1. Na platformie AWS otwórz zasobnik S3, wyszukaj odpowiedni folder zgodnie z wymaganymi dziennikami i sprawdź, czy w folderze znajdują się jakiekolwiek pliki dziennika.
  2. Jeśli dane nie istnieją, występuje problem z konfiguracją platformy AWS. W takim przypadku należy skonfigurować usługę AWS w celu wyeksportowania dzienników do zasobnika S3.

Przyczyna 3: Dane S3 nie dotarły do SQS

Dane nie zostały pomyślnie przeniesione z S3 do SQS.

Rozwiązanie: sprawdź, czy dane dotarły i skonfigurowały powiadomienia o zdarzeniach

  1. Na platformie AWS otwórz odpowiednią usługę SQS.
  2. Na karcie Monitorowanie w widżecie Liczba wysłanych komunikatów powinien być widoczny ruch. Jeśli w usłudze SQS nie ma żadnego ruchu, występuje problem z konfiguracją platformy AWS.
  3. Upewnij się, że definicja powiadomień o zdarzeniach dla usługi SQS zawiera poprawne filtry danych (prefiks i sufiks).
    1. Aby wyświetlić powiadomienia o zdarzeniach, wybierz kartę Właściwości w zasobniku S3 i przejdź do sekcji Powiadomienia o zdarzeniach.
    2. Jeśli nie widzisz tej sekcji, utwórz ją.
    3. Upewnij się, że usługa SQS zawiera odpowiednie zasady umożliwiające pobieranie danych z zasobnika S3. SqS musi zawierać te zasady na karcie Zasady dostępu .

Przyczyna 4. SqS nie odczytał danych

SqS nie odczytał pomyślnie danych S3.

Rozwiązanie: sprawdź, czy SQS odczytuje dane

  1. Na platformie AWS otwórz odpowiednią usługę SQS.

  2. Na karcie Monitorowanie w widżetach Liczba usuniętych komunikatów i Liczba odebranych komunikatów powinien być widoczny ruch.

  3. Jeden skok ilości danych nie jest wystarczający. Zaczekaj na wystarczającą ilość danych (kilka skoków), a następnie sprawdź, czy występują problemy.

  4. Jeśli co najmniej jeden z widżetów jest pusty, sprawdź dzienniki kondycji, uruchamiając to zapytanie:

    SentinelHealth 
    | where TimeGenerated > ago(1d)
    | where SentinelResourceKind in ('AmazonWebServicesCloudTrail', 'AmazonWebServicesS3')
    | where OperationName == 'Data fetch failure summary'
    | mv-expand TypeOfFailureDuringHour = ExtendedProperties["FailureSummary"]
    | extend StatusCode = TypeOfFailureDuringHour["StatusCode"]
    | extend StatusMessage = TypeOfFailureDuringHour["StatusMessage"]
    | project SentinelResourceKind, SentinelResourceName, StatusCode, StatusMessage, SentinelResourceId, TypeOfFailureDuringHour, ExtendedProperties
    
  5. Upewnij się, że funkcja kondycji jest włączona:

    SentinelHealth 
    | take 20
    
  6. Jeśli funkcja kondycji nie jest włączona, włącz ją.

Dane z łącznika AWS S3 (lub jednego z jego typów danych) są widoczne w usłudze Microsoft Sentinel z opóźnieniem przekraczającym 30 minut

Ten problem zwykle występuje, gdy firma Microsoft nie może odczytać plików w folderze S3. Firma Microsoft nie może odczytać plików, ponieważ są one zaszyfrowane lub w niewłaściwym formacie. W takich przypadkach wiele ponownych prób ostatecznie powoduje opóźnienie pozyskiwania.

Określanie przyczyny problemu

W tej sekcji omówiono następujące przyczyny:

  • Szyfrowanie dzienników nie jest poprawnie skonfigurowane
  • Powiadomienia o zdarzeniach nie są poprawnie zdefiniowane
  • Błędy kondycji lub kondycja wyłączone

Przyczyna 1. Szyfrowanie dzienników nie jest poprawnie skonfigurowane

Jeśli dzienniki są w pełni lub częściowo szyfrowane przez usługę zarządzania kluczami (KMS), usługa Microsoft Sentinel może nie mieć uprawnień do odszyfrowania plików przez usługę KMS.

Rozwiązanie: Sprawdzanie szyfrowania dzienników

Upewnij się, że usługa Microsoft Sentinel ma uprawnienia do odszyfrowywania plików przez usługę KMS. Przejrzyj wymagane uprawnienia usługi KMS dla dzienników usług GuardDuty i CloudTrail.

Przyczyna 2. Powiadomienia o zdarzeniach nie są poprawnie skonfigurowane

Podczas konfigurowania powiadomienia o zdarzeniu usługi Amazon S3 należy określić, do których obsługiwanych typów zdarzeń ma być wysyłane powiadomienie Amazon S3. Jeśli typ zdarzenia, który nie został określony, istnieje w zasobniku Amazon S3, usługa Amazon S3 nie wysyła powiadomienia.

Rozwiązanie: Sprawdź, czy powiadomienia o zdarzeniach są prawidłowo zdefiniowane

Aby sprawdzić, czy powiadomienia o zdarzeniach z usług S3 do SQS są poprawnie zdefiniowane, sprawdź, czy:

  • Powiadomienie jest definiowane z określonego folderu zawierającego dzienniki, a nie z głównego folderu zawierającego zasobnik.
  • Powiadomienie jest definiowane z sufiksem .gz . Przykład:

Przyczyna 3. Błędy kondycji lub wyłączona kondycja

W dziennikach kondycji mogą występować błędy lub funkcja kondycji może nie być włączona.

Rozwiązanie: Sprawdź, czy w dziennikach kondycji nie ma żadnych błędów i włącz kondycję

  1. Sprawdź, czy w dziennikach kondycji nie występują żadne błędy, uruchamiając to zapytanie:

    SentinelHealth
    | where TimeGenerated between (ago(startTime)..ago(endTime))
    | where SentinelResourceKind  == "AmazonWebServicesS3"
    | where Status != "Success"
    | distinct TimeGenerated, OperationName, SentinelResourceName, Status, Description
    
  2. Upewnij się, że funkcja kondycji jest włączona:

    SentinelHealth 
    | take 20
    
  3. Jeśli funkcja kondycji nie jest włączona, włącz ją.

Następne kroki

W tym artykule przedstawiono sposób szybkiego identyfikowania przyczyn i rozwiązywania typowych problemów z łącznikiem platformy AWS S3.

Z zadowoleniem przyjmujemy opinie, sugestie, żądania dotyczące funkcji, raportów o błędach lub ulepszeń i dodatków. Przejdź do repozytorium GitHub usługi Microsoft Sentinel , aby utworzyć problem lub rozwidlenie i przekazać wkład.