Udostępnij przez


Badanie ścieżek ataku aplikacji OAuth w Defender for Cloud Apps (wersja zapoznawcza)

Zarządzanie stopniem zagrożenia bezpieczeństwa przez firmę Microsoft pomaga efektywnie zarządzać powierzchnią ataków i ryzykiem narażenia firmy. Łącząc zasoby i techniki, ścieżki ataku ilustrują kompleksowe ścieżki, których osoby atakujące mogą użyć do przejścia z punktu wejścia w organizacji do krytycznych zasobów. Microsoft Defender for Cloud Apps zaobserwowano wzrost liczby osób atakujących korzystających z aplikacji OAuth w celu uzyskania dostępu do poufnych danych w aplikacjach krytycznych dla działania firmy, takich jak Microsoft Teams, SharePoint, Outlook i inne. Aby obsługiwać badania i środki zaradcze, te aplikacje są zintegrowane ze ścieżką ataku i widokami mapy obszaru ataków w Zarządzanie stopniem zagrożenia bezpieczeństwa przez firmę Microsoft.

Wymagania wstępne

Aby rozpocząć pracę z funkcjami ścieżki ataku aplikacji OAuth w usłudze Exposure Management, upewnij się, że spełniasz następujące wymagania.

Wymagane role i uprawnienia

Aby uzyskać dostęp do wszystkich środowisk zarządzania ekspozycjami, potrzebujesz roli Ujednoliconej kontroli dostępu opartej na rolach (RBAC) lub roli Entra ID. Wymagana jest tylko jedna.

  • Zarządzanie ekspozycją (odczyt) (Ujednolicona kontrola dostępu oparta na rolach)

Alternatywnie możesz użyć jednej z następujących ról identyfikatora Entra:

Uprawnienie Akcje
Administrator globalny (uprawnienia do odczytu i zapisu)
Administracja zabezpieczeń (uprawnienia do odczytu i zapisu)
Operator zabezpieczeń (uprawnienia do odczytu i zapisu ograniczone)
Czytelnik globalny (uprawnienia do odczytu)
Czytelnik zabezpieczeń (uprawnienia do odczytu)

Uwaga

Obecnie dostępne tylko w środowiskach chmury komercyjnej. Zarządzanie stopniem zagrożenia bezpieczeństwa przez firmę Microsoft dane i możliwości są obecnie niedostępne w chmurach instytucji rządowych USA — GCC, GCC High, DoD i China Gov.

Krytyczne zarządzanie zasobami — jednostki usługi

Microsoft Defender for Cloud Apps definiuje zestaw uprawnień OAuth uprawnień krytycznych. Aplikacje OAuth z tymi uprawnieniami są uważane za zasoby o wysokiej wartości. W przypadku naruszenia zabezpieczeń osoba atakująca może uzyskać wysokie uprawnienia do aplikacji SaaS. Aby odzwierciedlić to ryzyko, ścieżki ataku traktują jednostki usługi z tymi uprawnieniami jako cele docelowe.

Wyświetlanie uprawnień dla zasobów krytycznych

Aby wyświetlić pełną listę uprawnień, przejdź do portalu Microsoft Defender i przejdź do pozycji Ustawienia > Microsoft Defender XDR > Reguły > Krytyczne zarządzanie zasobami.

Zrzut ekranu przedstawiający stronę Krytyczne zarządzanie zasobami w portalu Microsoft Defender.

Badanie przepływu użytkownika: wyświetlanie ścieżek ataku obejmujących aplikacje OAuth

Gdy zrozumiasz, które uprawnienia reprezentują cele o wysokiej wartości, wykonaj następujące kroki, aby zbadać, jak te aplikacje są wyświetlane w ścieżkach ataków w środowisku. W przypadku mniejszych organizacji o możliwej do zarządzania liczbie ścieżek ataków zalecamy zastosowanie tego ustrukturyzowanego podejścia w celu zbadania każdej ścieżki ataku:

Uwaga

Aplikacje OAuth są wyświetlane na mapie powierzchni ścieżki ataku tylko wtedy, gdy zostaną wykryte określone warunki.
Na przykład aplikacja OAuth może pojawić się na ścieżce ataku, jeśli zostanie wykryty składnik podatny na zagrożenia z łatwym do wykorzystania punktem wejścia. Ten punkt wejścia umożliwia przenoszenie boczne do jednostek usługi z wysokimi uprawnieniami.

  1. Przejdź do obszaru Podatność Zarządzanie atakiem >> — ścieżki ataków.

  2. Filtruj według typu docelowego: jednostka usługi AAD

    Zrzut ekranu przedstawiający usługę ścieżek ataku dodającą typ celu pricipal

  3. Wybierz ścieżkę ataku zatytułowaną: "Urządzenie z lukami w zabezpieczeniach o wysokiej ważności zezwala na przenoszenie boczne do jednostki usługi z uprawnieniami poufnymi"

    Zrzut ekranu przedstawiający nazwę ścieżki ataku

  4. Kliknij przycisk Widok na mapie, aby wyświetlić ścieżkę ataku.

    Zrzut ekranu przedstawiający widok na przycisku mapy

  5. Wybierz znak + , aby rozwinąć węzły i wyświetlić szczegółowe połączenia.

    Zrzut ekranu przedstawiający mapę obszaru ataków

  6. Zatrzymaj kursor lub wybierz węzły i krawędzie, aby eksplorować dodatkowe dane, takie jak uprawnienia, które ma ta aplikacja OAuth.

    Zrzut ekranu przedstawiający uprawnienia przypisane do aplikacji OAuth, jak pokazano na mapie obszaru ataków

  7. Skopiuj nazwę aplikacji OAuth i wklej ją na pasku wyszukiwania na stronie Aplikacje.

    Zrzut ekranu przedstawiający kartę Aplikacji OAuth

  8. Wybierz nazwę aplikacji, aby przejrzeć przypisane uprawnienia i szczegółowe informacje o użyciu, w tym, czy uprawnienia o wysokich uprawnieniach są aktywnie używane.

    Zrzut ekranu przedstawiający uprawnienia przypisane do aplikacji Oauth

  9. Opcjonalnie: jeśli określisz, że aplikacja OAuth powinna zostać wyłączona, możesz ją wyłączyć na stronie Aplikacje.

Przepływ użytkownika osoby podejmującej decyzje: określanie priorytetów ścieżki ataku przy użyciu punktów zadławienia

W przypadku większych organizacji z licznymi ścieżkami ataku, których nie można ręcznie zbadać, zalecamy użycie danych ścieżki ataku i wykorzystanie środowiska Choke Points jako narzędzia do określania priorytetów. Takie podejście umożliwia:

  • Identyfikowanie zasobów połączonych z największą liczbami ścieżek ataku.
  • Podejmij świadome decyzje, które zasoby mają być priorytetowe do zbadania.
  • Przefiltruj według Microsoft Entra aplikacji OAuth, aby zobaczyć, które aplikacje OAuth są zaangażowane w większość ścieżek ataku.
  • Zdecyduj, do których aplikacji OAuth mają być stosowane uprawnienia z najmniejszymi uprawnieniami.

Aby rozpocząć:

  1. Przejdź do strony Ścieżki > ataku Zadławianie punktów.

    Zrzut ekranu przedstawiający stronę punktów zadławienia

  2. Wybierz nazwę punktu zadławienia, aby wyświetlić więcej szczegółów na temat najważniejszych ścieżek ataku, takich jak nazwa, punkt wejścia i cel.

  3. Kliknij pozycję Wyświetl promień wybuchu, aby dokładniej zbadać punkt zadławienia na mapie powierzchni ataku. Zrzut ekranu przedstawiający przycisk promień wybuchu widoku

Jeśli punkt zadławienia jest aplikacją OAuth, kontynuuj badanie na stronie Aplikacje, zgodnie z opisem w krokach 7–9 powyżej.

Analizowanie mapy powierzchni ataków i wyszukiwanie za pomocą zapytań

Na mapie obszaru Atak można zobaczyć połączenia z aplikacji należących do użytkownika, aplikacji OAuth i jednostek usługi. Te dane relacji są dostępne w:

  • Tabela ExposureGraphEdges (pokazuje połączenia)

  • Tabela ExposureGraphNodes (zawiera właściwości węzła, takie jak uprawnienia)

Użyj następującego zapytania zaawansowanego wyszukiwania zagrożeń, aby zidentyfikować wszystkie aplikacje OAuth z uprawnieniami krytycznymi:

let RelevantNodes = ExposureGraphNodes
| where NodeLabel == "Microsoft Entra OAuth App" or NodeLabel == "serviceprincipal"
| project NodeId, NodeLabel, NodeName, NodeProperties;
ExposureGraphEdges
| where EdgeLabel == "has permissions to" or EdgeLabel == "can authenticate as"
| make-graph SourceNodeId --> TargetNodeId with RelevantNodes on NodeId
| graph-match (AppRegistration)-[canAuthAs]->(SPN)-[hasPermissionTo]->(Target)
        where AppRegistration.NodeLabel == "Microsoft Entra OAuth App" and
        canAuthAs.EdgeLabel == "can authenticate as" and
        SPN.NodeLabel == "serviceprincipal" and
        SPN.NodeProperties["rawData"]["criticalityLevel"]["criticalityLevel"] == 0 and
        hasPermissionTo.EdgeLabel == @"has permissions to" and
        Target.NodeLabel == "Microsoft Entra OAuth App" and
        Target.NodeName == "Microsoft Graph"
        project AppReg=AppRegistration.NodeLabel,
         canAuthAs=canAuthAs.EdgeLabel, SPN.NodeLabel, DisplayName=SPN.NodeProperties["rawData"]["accountDisplayName"],
         Enabled=SPN.NodeProperties["rawData"]["accountEnabled"], AppTenantID=SPN.NodeProperties["rawData"]["appOwnerOrganizationId"],
         hasPermissionTo=hasPermissionTo.EdgeLabel, Target=Target.NodeName,
         AppPerm=hasPermissionTo.EdgeProperties["rawData"]["applicationPermissions"]["permissions"]
| mv-apply AppPerm on (summarize AppPerm = make_list(AppPerm.permissionValue))
| project AppReg, canAuthAs, DisplayName, Enabled, AppTenantID, hasPermissionTo, Target, AppPerm

Następne kroki

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