Wykrywanie i korygowanie niedozwolonych dotacji na zgodę

Porada

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

Dotyczy

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, takie jak resetowanie haseł dla naruszonych kont lub wymaganie uwierzytelniania wieloskładnikowego (MFA) na kontach, nie są skuteczne w przypadku tego typu ataków, ponieważ są to aplikacje innych firm i są zewnętrzne dla organizacji.

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

Ważne

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 365 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ę Wyszukiwanie , 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 kliknij pozycję Wyszukaj.

  3. Kliknij 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.

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

Jak potwierdzić atak

Jeśli masz co najmniej jedno wystąpienie IOCs wymienione powyżej, należy wykonać dalsze badania, aby pozytywnie potwierdzić, że atak miał miejsce. Aby potwierdzić atak, możesz użyć dowolnej z tych trzech metod:

  • Tworzenie spisu aplikacji i ich uprawnień przy użyciu portalu usługi Azure Active Directory. Ta metoda jest dokładna, ale możesz sprawdzić tylko jednego użytkownika w danym momencie, co 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

Można to zrobić dla użytkowników za pomocą portalu usługi Azure Active Directory lub programu PowerShell lub indywidualnego wyliczenia dostępu użytkowników do aplikacji.

Kroki korzystania z portalu usługi Azure Active Directory

Możesz wyszukać aplikacje, do których każdy użytkownik udzielił uprawnień, korzystając z portalu usługi Azure Active Directory pod adresem https://portal.azure.com.

  1. Zaloguj się do Azure Portal z uprawnieniami administracyjnymi.
  2. Wybierz blok Azure Active Directory.
  3. Wybierz pozycję Użytkownicy.
  4. Wybierz użytkownika, który chcesz przejrzeć.
  5. Wybierz pozycję Aplikacje.

Spowoduje to wyświetlenie aplikacji przypisanych do użytkownika oraz uprawnień, jakie 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 umożliwiające wykonanie tej czynności za pomocą programu PowerShell

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

Wymagania wstępne

  • Zainstalowano bibliotekę programu PowerShell Azure AD.
  • administrator globalny praw do dzierżawy, dla których zostanie uruchomiony skrypt.
  • Administrator lokalny na komputerze, na którym będą uruchamiane skrypty.

Ważne

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

  1. Zaloguj się do komputera, na który zostanie uruchomiony skrypt z uprawnieniami administratora lokalnego.

  2. Pobierz lub skopiuj skrypt Get-AzureADPSPermissions.ps1 z usługi GitHub do folderu, z którego zostanie uruchomiony skrypt. Będzie to ten sam folder, w którym zostanie zapisany wyjściowy plik "permissions.csv".

  3. Otwórz sesję programu PowerShell jako administrator i otwórz folder, w którym zapisano skrypt.

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

  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 przejrzyj je dokładnie, 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 o dużym wpływie mają udzielone nieodpowiednie zgody, należy zbadać sprawę 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. Wyszukaj użytkowników, których dotyczy problem, przedziały czasowe, do których nielegalna aplikacja miała dostęp do twojej organizacji, oraz uprawnienia, które miała aplikacja. Dziennik inspekcji można przeszukiwać w portalu Microsoft 365 Defender.

Ważne

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 na usunięcie tego dostępu.

  • Możesz odwołać uprawnienie aplikacji w portalu usługi Azure Active Directory, wykonując następujące czynności:

    1. Przejdź do użytkownika, którego dotyczy problem, w bloku Użytkownik usługi Azure Active Directory .
    2. Wybierz pozycję Aplikacje.
    3. Wybierz nielegalną aplikację.
    4. Kliknij pozycję Usuń w obszarze przechodzenia do szczegółów.
  • Udzielenie zgody OAuth można odwołać za pomocą programu PowerShell, wykonując kroki opisane w temacie Remove-AzureADOAuth2PermissionGrant.

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

  • Możesz również całkowicie wyłączyć logowanie do konta, którego dotyczy problem, co z kolei spowoduje wyłączenie dostępu aplikacji do danych na tym koncie. Oczywiście nie jest to idealne rozwiązanie dla produktywności użytkownika końcowego, ale jeśli pracujesz nad szybkim ograniczeniem wpływu, może to być opłacalne krótkoterminowe korygowanie.

  • Możesz wyłączyć zintegrowane aplikacje dla dzierżawy. Jest to drastyczny krok, który uniemożliwia użytkownikom końcowym udzielanie zgody w całej dzierżawie. Uniemożliwia to użytkownikom nieumyślne udzielenie dostępu do złośliwej aplikacji. Nie jest to zdecydowanie zalecane, ponieważ poważnie upośledza zdolność użytkowników do wydajnej pracy z aplikacjami innych firm. Można to zrobić, wykonując kroki opisane w temacie Włączanie i wyłączanie zintegrowanych aplikacji.

Zobacz też