Wykrywanie i korygowanie niedozwolonych dotacji na zgodę

Porada

Czy wiesz, że możesz bezpłatnie wypróbować funkcje w Microsoft Defender XDR Office 365 planie 2? Użyj 90-dniowej wersji próbnej Ochrona usługi Office 365 w usłudze Defender w centrum wersji próbnej portalu Microsoft Defender. Dowiedz się, kto może zarejestrować się i zapoznać się z warunkami dotyczącymi wersji próbnej tutaj.

Krótki opis Dowiedz się, jak rozpoznać i skorygować nielegalny atak polegający na udzieleniu zgody na platformie Microsoft 365.

W przypadku ataku polegającego na udzieleniu nielegalnej zgody osoba atakująca tworzy aplikację zarejestrowaną na platformie Azure, która żąda dostępu do danych, takich jak informacje kontaktowe, poczta e-mail lub dokumenty. Następnie osoba atakująca nakłania użytkownika końcowego do udzielenia tej aplikacji zgody na dostęp do swoich danych w wyniku ataku wyłudzania informacji lub wstrzyknięcia nielegalnego kodu do zaufanej witryny internetowej. Po udzieleniu zgody nielegalnej aplikacji ma ona dostęp na poziomie konta do danych bez konieczności posiadania konta organizacyjnego. Normalne kroki korygowania (na przykład resetowanie haseł lub wymaganie uwierzytelniania wieloskładnikowego)) nie są skuteczne w przypadku tego typu ataków, ponieważ te aplikacje są zewnętrzne dla organizacji.

Te ataki korzystają z modelu interakcji, który zakłada, że jednostka wywołująca informacje jest automatyzacją, a nie człowiekiem.

Ważna

Czy podejrzewasz, że masz teraz problemy z nielegalnymi dotacjami na zgodę z aplikacji? Microsoft Defender for Cloud Apps ma narzędzia do wykrywania, badania i korygowania aplikacji OAuth. Ten artykuł dotyczący usługi Defender for Cloud Apps zawiera samouczek przedstawiający sposób badania ryzykownych aplikacji OAuth. Możesz również ustawić zasady aplikacji OAuth , aby zbadać uprawnienia żądane przez aplikację, które użytkownicy autoryzuje te aplikacje, oraz szeroko zatwierdzać lub blokować te żądania uprawnień.

Musisz przeszukać dziennik inspekcji , aby znaleźć znaki, nazywane również wskaźnikami naruszenia (IOC) tego ataku. W przypadku organizacji z wieloma aplikacjami zarejestrowanymi na platformie Azure i dużą bazą użytkowników najlepszym rozwiązaniem jest cotygodniowe przeglądanie przyznawania zgody organizacji.

Kroki znajdowania oznak tego ataku

  1. Otwórz portal Microsoft Defender pod adresemhttps://security.microsoft.com, a następnie wybierz pozycję Inspekcja. Możesz też przejść bezpośrednio do strony Inspekcja, używając https://security.microsoft.com/auditlogsearch.

  2. Na stronie Inspekcja sprawdź, czy wybrano kartę Search, a następnie skonfiguruj następujące ustawienia:

    • Zakres dat i godzin
    • Działania: sprawdź, czy wybrano opcję Pokaż wyniki dla wszystkich działań .

    Po zakończeniu wybierz pozycję Search.

  3. Wybierz kolumnę Działanie , aby posortować wyniki i wyszukać pozycję Zgoda na aplikację.

  4. Wybierz wpis z listy, aby wyświetlić szczegóły działania. Sprawdź, czy wartość IsAdminConsent jest ustawiona na wartość True.

Uwaga

Wyświetlenie odpowiedniego wpisu dziennika inspekcji w wynikach wyszukiwania po wystąpieniu zdarzenia może potrwać od 30 minut do 24 godzin.

Czas zachowywania i przeszukiwania rekordu inspekcji w dzienniku inspekcji zależy od subskrypcji platformy Microsoft 365, a w szczególności od typu licencji przypisanej do określonego użytkownika. Aby uzyskać więcej informacji, zobacz Dziennik inspekcji.

Wartość true wskazuje, że ktoś z dostępem administratora globalnego mógł udzielić szerokiego dostępu do danych. Jeśli ta wartość jest nieoczekiwana, wykonaj kroki w celu potwierdzenia ataku.

Jak potwierdzić atak

Jeśli masz co najmniej jedno wystąpienie we/wy na liście, musisz wykonać dalsze badania, aby pozytywnie potwierdzić, że doszło do ataku. Aby potwierdzić atak, możesz użyć dowolnej z tych trzech metod:

  • Inwentaryzowanie aplikacji i ich uprawnień przy użyciu centrum administracyjne Microsoft Entra. Ta metoda jest dokładna, ale można sprawdzić tylko jednego użytkownika w czasie, który może być bardzo czasochłonne, jeśli masz wielu użytkowników do sprawdzenia.
  • Inwentaryzacja aplikacji i ich uprawnień przy użyciu programu PowerShell. Jest to najszybsza i najbardziej dokładna metoda z najmniejszą ilością narzutu.
  • Aby użytkownicy indywidualnie sprawdzili swoje aplikacje i uprawnienia, zgłoś wyniki administratorom w celu skorygowania.

Tworzenie spisu aplikacji z dostępem w organizacji

Dostępne są następujące opcje tworzenia spisu aplikacji dla użytkowników:

  • Centrum administracyjne Microsoft Entra.
  • Powershell.
  • Aby użytkownicy indywidualnie wyliczali własny dostęp do aplikacji.

Kroki korzystania z centrum administracyjne Microsoft Entra

Możesz wyszukać aplikacje, do których każdy użytkownik udzielił uprawnień, korzystając z centrum administracyjne Microsoft Entra:

  1. Otwórz centrum administracyjne Microsoft Entra pod adresem https://entra.microsoft.com, a następnie przejdź do pozycjiUżytkownicy>tożsamości> *Wszyscy użytkownicy. Możesz też przejść bezpośrednio do pozycji Użytkownicy>Wszyscy użytkownicy, użyj polecenia https://entra.microsoft.com/#view/Microsoft_AAD_UsersAndTenants/UserManagementMenuBlade/~/AllUsers/menuId/.
  2. Znajdź i wybierz użytkownika, którego chcesz przejrzeć, klikając wartość Nazwa wyświetlana .
  3. Na otwartej stronie szczegółów użytkownika wybierz pozycję Aplikacje.

W tych krokach przedstawiono aplikacje przypisane do użytkownika oraz uprawnienia, które mają aplikacje.

Kroki umożliwiające użytkownikom wyliczenie dostępu do aplikacji

Niech użytkownicy przejdą do https://myapps.microsoft.com witryny i przejrzyją tam swój dostęp do własnej aplikacji. Powinny mieć możliwość wyświetlania wszystkich aplikacji z dostępem, wyświetlania ich szczegółów (w tym zakresu dostępu) oraz odwoływania uprawnień do podejrzanych lub nielegalnych aplikacji.

Kroki w programie PowerShell

Najprostszym sposobem zweryfikowania ataku polegającego na udzieleniu nielegalnej zgody jest uruchomienie Get-AzureADPSPermissions.ps1, który powoduje zrzucenie wszystkich aplikacji zgody OAuth i aplikacji OAuth dla wszystkich użytkowników dzierżawy do jednego pliku .csv.

Wymagania wstępne

  • Zainstalowano bibliotekę programu PowerShell Azure AD.
  • Uprawnienia administratora globalnego w organizacji, w której jest uruchamiany skrypt.
  • Uprawnienia administratora lokalnego na komputerze, na którym są uruchamiane skrypty.

Ważna

Zdecydowanie zalecamy wymaganie uwierzytelniania wieloskładnikowego na koncie administratora. Ten skrypt obsługuje uwierzytelnianie uwierzytelniania wieloskładnikowego.

Uwaga

Moduły programu PowerShell Azure AD i MSOnline są przestarzałe od 30 marca 2024 r. Aby dowiedzieć się więcej, przeczytaj aktualizację wycofania. Po tej dacie obsługa tych modułów jest ograniczona do pomocy w migracji do zestawu Microsoft Graph PowerShell SDK i poprawek zabezpieczeń. Przestarzałe moduły będą nadal działać do 30 marca 2025 r.

Zalecamy migrację do programu Microsoft Graph PowerShell w celu interakcji z Tożsamość Microsoft Entra (dawniej Azure AD). Aby uzyskać typowe pytania dotyczące migracji, zapoznaj się z często zadawanymi pytaniami dotyczącymi migracji. Uwaga: W wersjach 1.0.x usługi MSOnline mogą wystąpić zakłócenia po 30 czerwca 2024 r.

  1. Zaloguj się do komputera, na którym chcesz uruchomić skrypty z uprawnieniami administratora lokalnego.

  2. Pobierz lub skopiuj skrypt Get-AzureADPSPermissions.ps1 z usługi GitHub do folderu, który można łatwo znaleźć i zapamiętać. Ten folder jest również miejscem, w którym należy napisać plik wyjściowy "permissions.csv".

  3. Otwórz sesję programu PowerShell z podwyższonym poziomem uprawnień jako administrator w folderze, w którym zapisano skrypt.

  4. Połącz się z katalogiem przy użyciu polecenia cmdlet Connect-MgGraph .

  5. Uruchom to polecenie programu PowerShell:

    .\Get-AzureADPSPermissions.ps1 | Export-csv -Path "Permissions.csv" -NoTypeInformation
    

Skrypt tworzy jeden plik o nazwie Permissions.csv. Wykonaj następujące kroki, aby wyszukać niedozwolone przyznawanie uprawnień aplikacji:

  1. W kolumnie ConsentType (kolumna G) wyszukaj wartość "AllPrinciples". Uprawnienie AllPrincipals umożliwia aplikacji klienckiej dostęp do zawartości wszystkich osób w dzierżawie. Natywne aplikacje platformy Microsoft 365 wymagają tego uprawnienia, aby działały poprawnie. Każda aplikacja spoza firmy Microsoft z tym uprawnieniem powinna być dokładnie przeglądana.

  2. W kolumnie Uprawnienie (kolumna F) przejrzyj uprawnienia, które każda delegowana aplikacja ma do zawartości. Poszukaj uprawnień "Odczyt" i "Zapis" lub "Wszystkie" i dokładnie przejrzyj te uprawnienia, ponieważ mogą one nie być odpowiednie.

  3. Przejrzyj konkretnych użytkowników, którzy mają udzielone zgody. Jeśli użytkownicy o wysokim profilu lub wysokiej wartości mają udzielone nieodpowiednie zgody, należy zbadać dokładniej.

  4. W kolumnie ClientDisplayName (kolumna C) wyszukaj aplikacje, które wydają się podejrzane. Aplikacje z błędnie napisanymi nazwami, super mdłymi nazwami lub nazwami brzmiące hakerami powinny być dokładnie przeglądane.

Określanie zakresu ataku

Po zakończeniu inwentaryzacji dostępu do aplikacji przejrzyj dziennik inspekcji , aby określić pełny zakres naruszenia. Search użytkowników, których dotyczy problem, ramy czasowe, które nielegalna aplikacja miała dostęp do twojej organizacji, oraz uprawnienia, jakie miała aplikacja. Dziennik inspekcji można przeszukiwać w portalu Microsoft Defender.

Ważna

Inspekcja skrzynek pocztowych i inspekcja aktywności dla administratorów i użytkowników muszą zostać włączone przed atakiem, aby można było uzyskać te informacje.

Po zidentyfikowaniu aplikacji z nielegalnymi uprawnieniami masz kilka sposobów usunięcia tego dostępu:

  • Możesz odwołać uprawnienie aplikacji w centrum administracyjne Microsoft Entra, wykonując następujące kroki:

    1. Otwórz centrum administracyjne Microsoft Entra pod adresem https://entra.microsoft.com, a następnie przejdź do pozycjiUżytkownicy>tożsamości> *Wszyscy użytkownicy. Możesz też przejść bezpośrednio do pozycji Użytkownicy>Wszyscy użytkownicy, użyj polecenia https://entra.microsoft.com/#view/Microsoft_AAD_UsersAndTenants/UserManagementMenuBlade/~/AllUsers/menuId/.
    2. Znajdź i wybierz użytkownika, którego dotyczy problem, klikając wartość Nazwa wyświetlana .
    3. Na otwartej stronie szczegółów użytkownika wybierz pozycję Aplikacje.
    4. Na stronie Aplikacje wybierz niedozwoloną aplikację, klikając wartość Nazwa .
    5. Na otwartej stronie Szczegóły przypisania wybierz pozycję Usuń.
  • Udzielenie zgody OAuth można odwołać za pomocą programu PowerShell, wykonując kroki opisane w temacie Remove-MgOauth2PermissionGrant

  • Przypisanie roli aplikacji usługi można odwołać za pomocą programu PowerShell, wykonując kroki opisane w temacie Remove-MgServicePrincipalAppRoleAssignment.

  • Możesz wyłączyć logowanie dla konta, którego dotyczy problem, co powoduje wyłączenie dostępu aplikacji do danych na koncie. Ta akcja nie jest idealna dla produktywności użytkowników, ale może to być krótkoterminowe korygowanie w celu szybkiego ograniczenia wyników ataku.

  • Możesz wyłączyć zintegrowane aplikacje w organizacji. Ta akcja jest drastyczna. Chociaż uniemożliwia to użytkownikom przypadkowe udzielanie dostępu do złośliwej aplikacji, uniemożliwia również wszystkim użytkownikom udzielanie zgody na dowolne aplikacje. Nie zalecamy tej akcji, ponieważ poważnie pogarsza ona produktywność użytkowników w aplikacjach innych firm. Zintegrowane aplikacje można wyłączyć, wykonując kroki opisane w temacie Włączanie lub wyłączanie zintegrowanych aplikacji.

Zobacz też