Badanie udzielania zgody aplikacji

Ten artykuł zawiera wskazówki dotyczące identyfikowania i badania ataków na zgodę aplikacji, ochrony informacji i minimalizowania dalszych zagrożeń.

Ten artykuł zawiera następujące sekcje:

  • Wymagania wstępne: Obejmuje określone wymagania, które należy wykonać przed rozpoczęciem badania. Na przykład rejestrowanie, które powinno być włączone, role i uprawnienia wymagane, między innymi.
  • Przepływu pracy: Przedstawia przepływ logiczny, który należy wykonać, aby wykonać to badanie.
  • Lista kontrolna: Zawiera listę zadań dla każdego z kroków na wykresie przepływowym. Ta lista kontrolna może być przydatna w wysoce regulowanych środowiskach, aby sprawdzić, co zrobiono, lub po prostu jako bramę jakości dla siebie.
  • Kroki badania: Zawiera szczegółowe wskazówki krok po kroku dotyczące tego konkretnego badania.
  • Odzyskiwania: Zawiera ogólne kroki umożliwiające odzyskanie/złagodzenie problemu z atakiem na udzielenie zgody nielegalnej aplikacji.
  • Odwołania: Zawiera dodatkowe materiały do czytania i materiałów referencyjnych.

Wymagania wstępne

Poniżej przedstawiono ogólne ustawienia i konfiguracje, które należy wykonać w celu przeprowadzenia badania dla grantów zgody aplikacji. Przed rozpoczęciem badania upewnij się, że znasz typy uprawnień zgody wyjaśnione w temacie Typy uprawnień zgody.

Dane klienta

Aby rozpocząć proces badania, potrzebne są następujące dane:

  • Dostęp do dzierżawy jako konta globalnego Administracja — konto tylko w chmurze (a nie część środowiska lokalnego)
  • Szczegóły wskaźników naruszenia (IoCs)
  • Data i godzina, o której zauważono zdarzenie
  • Zakres dat
  • Liczba kont z naruszeniem zabezpieczeń
  • Nazwy kont, na których naruszono bezpieczeństwo
  • Role konta z naruszeniem zabezpieczeń
  • Czy konta są wysoce uprzywilejowane (ga Microsoft Exchange, SharePoint)?
  • Czy istnieją aplikacje dla przedsiębiorstw powiązane ze zdarzeniem?
  • Czy wszyscy użytkownicy zgłaszali wszystkie aplikacje, które żądały uprawnień do danych w ich imieniu?

Wymagania systemowe

Upewnij się, że spełnisz następujące wymagania dotyczące instalacji i konfiguracji:

  1. Zainstalowano moduł Programu PowerShell usługi AzureAD.
  2. Masz uprawnienia administratora globalnego w dzierżawie, w której zostanie uruchomiony skrypt.
  3. Masz przypisaną rolę administratora lokalnego na komputerze, którego będziesz używać do uruchamiania skryptów.

Instalowanie modułu AzureAD

Użyj tego polecenia, aby zainstalować moduł AzureAD.

Install-Module -Name AzureAD -Verbose

Uwaga

Jeśli zostanie wyświetlony monit o zainstalowanie modułów z niezaufanego repozytorium, wpisz Y i naciśnij klawisz Enter.

Pobierz skrypt AzureADPSPermissions z usługi GitHub

  1. Pobierz skrypt Get-AzureADPSPermissions.ps1 z usługi GitHub do folderu, z którego zostanie uruchomiony skrypt. Plik wyjściowy "permissions.csv" zostanie również zapisany w tym samym folderze.

  2. Otwórz wystąpienie programu PowerShell jako administrator i otwórz folder, w którym został zapisany skrypt.

  3. Połącz się z katalogiem Connect-AzureAD przy użyciu polecenia cmdlet . Oto przykład.

    Connect-AzureAD -tenantid "2b1a14ac-2956-442f-9577-1234567890ab" -AccountId "user1@contoso.onmicrosoft.com"
    
  4. Uruchom to polecenie programu PowerShell.

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

    Rozłącz sesję usługi AzureAD za pomocą tego polecenia.

    Disconnect-AzureAD
    

Zgoda to proces udzielania autoryzacji aplikacji w celu uzyskania dostępu do chronionych zasobów w imieniu użytkowników. Administrator lub użytkownik może zostać poproszony o zgodę na zezwolenie na dostęp do danych organizacji/poszczególnych osób.

Aplikacja ma dostęp do danych na podstawie określonego użytkownika lub całej organizacji. Takie zgody mogą jednak być niewłaściwie używane przez osoby atakujące, aby uzyskać trwałość środowiska i uzyskać dostęp do poufnych danych. Tego rodzaju ataki są nazywane nielegalnymi grantami zgody, które mogą wystąpić za pośrednictwem wiadomości e-mail wyłudzania informacji, naruszenia zabezpieczeń konta użytkownika za pośrednictwem sprayu haseł lub gdy osoba atakująca zarejestruje aplikację jako legalnego użytkownika. W scenariuszach, w których konto globalne Administracja zostało naruszone, rejestracja i udzielenie zgody są przeznaczone dla całego dzierżawy, a nie tylko dla jednego użytkownika.

Aby aplikacja mogła uzyskać dostęp do danych organizacji, użytkownik musi udzielić aplikacji odpowiednich uprawnień. Różne uprawnienia umożliwiają uzyskiwanie dostępu na różnych poziomach. Domyślnie wszyscy użytkownicy mogą wyrażać zgodę na aplikacje w przypadku uprawnień, które nie wymagają zgody administratora. Na przykład użytkownik może wyrazić zgodę na zezwolenie aplikacji na dostęp do skrzynki pocztowej, ale nie może wyrazić zgody na dostęp aplikacji do odczytu i zapisu do wszystkich plików w organizacji.

Uwaga

Dzięki umożliwieniu użytkownikom udzielania aplikacji dostępu do danych użytkownicy mogą łatwo uzyskiwać przydatne aplikacje i pracować wydajnie. Jednak w niektórych sytuacjach ta konfiguracja może stanowić zagrożenie, jeśli nie jest monitorowana i dokładnie kontrolowana.

Aby móc udzielić zgody administratora dla całej dzierżawy, musisz zalogować się jako jeden z następujących elementów:

  • Administrator globalny
  • Administrator aplikacji
  • Administrator aplikacji w chmurze
  • Administrator — Wskazuje, że zgoda została podana przez administratora (w imieniu organizacji)
  • Użytkownik indywidualny — Wskazuje, że zgoda została udzielona przez użytkownika i ma dostęp tylko do informacji o tym użytkowniku
  • Zaakceptowane wartości
    • AllPrincipals — Zgoda administratora dla całej dzierżawy
    • Podmiot zabezpieczeń — Użytkownik wyraził zgodę tylko na dane związane z tym kontem

Rzeczywiste środowisko użytkownika udzielania zgody będzie się różnić w zależności od zasad ustawionych w dzierżawie użytkownika, zakresie urzędu (lub roli) użytkownika oraz typu uprawnień żądanych przez aplikację kliencka. Oznacza to, że deweloperzy aplikacji i administratorzy dzierżawy mają pewną kontrolę nad środowiskiem wyrażania zgody. Administratorzy mają elastyczność ustawiania i dezaktywowania zasad w dzierżawie lub aplikacji w celu kontrolowania środowiska zgody w dzierżawie. Deweloperzy aplikacji mogą dyktować, jakie typy uprawnień są wymagane i czy chcą kierować użytkowników za pośrednictwem przepływu zgody użytkownika, czy też przepływu zgody administratora.

  • Przepływ zgody użytkownika — gdy deweloper aplikacji kieruje użytkowników do punktu końcowego autoryzacji z zamiarem rejestrowania zgody tylko dla bieżącego użytkownika.

  • Administracja przepływ zgody — gdy deweloper aplikacji kieruje użytkowników do punktu końcowego zgody administratora z zamiarem rejestrowania zgody dla całej dzierżawy. Aby zapewnić prawidłowe działanie przepływu zgody administratora, deweloperzy aplikacji muszą wyświetlić listę wszystkich uprawnień we właściwości RequiredResourceAccess w manifeście aplikacji.

Uprawnienia delegowane a uprawnienia aplikacji

Delegowane uprawnienia są używane przez aplikacje, które mają zalogowanego użytkownika i mogą mieć zgody zastosowane przez administratora lub użytkownika.

Uprawnienia aplikacji są używane przez aplikacje uruchamiane bez zalogowanego użytkownika. Na przykład aplikacje uruchamiane jako usługi w tle lub demony. Uprawnienia aplikacji mogą być wyrażane tylko przez administratora.

Aby uzyskać więcej informacji, zobacz:

Klasyfikowanie ryzykownych uprawnień

W systemie istnieją tysiące (przynajmniej) uprawnień, a nie wykonalne, aby wyświetlić listę lub przeanalizować wszystkie te uprawnienia. Poniższa lista będzie dotyczyć często nieprawidłowych uprawnień, a inne, które mogłyby spowodować katastrofalny wpływ w przypadku nieprawidłowego użycia.

Na wysokim poziomie zaobserwowaliśmy, że następujące uprawnienia delegowane "root" (App+User) są niewłaściwie wykorzystywane w atakach wyłudzających informacje o zgody. Element główny odpowiada najwyższemu poziomowi. Na przykład Kontakty.* oznacza uwzględnienie wszystkich delegowanych permutacji uprawnień kontaktów: Contacts.Read, Contacts.ReadWrite, Contacts.Read.Shared i Contacts.ReadWrite.Shared.

  1. Mail.* (w tym Mail.Send*, ale nie Mail.ReadBasic*)
  2. Kontakty. *
  3. MailboxSettings.*
  4. Ludzie.*
  5. Pliki.*
  6. Uwagi.*
  7. Directory.AccessAsUser.All
  8. User_Impersonation

Pierwsze siedem uprawnień na powyższej liście jest przeznaczonych dla programu Microsoft Graph i odpowiedników "starszego" interfejsu API, takich jak usługa Azure Active Directory (Azure AD) Graph i interfejs REST programu Outlook. Ósme uprawnienie dotyczy usługi Azure Resource Manager (ARM) i może być również niebezpieczne dla dowolnego interfejsu API, który uwidacznia poufne dane z tym zakresem personifikacji ogólnej.

Zgodnie z naszą obserwacją osoby atakujące używały kombinacji pierwszych sześciu uprawnień w 99% ataków wyłudzających informacje o zgody. Większość osób nie myśli o delegowanej wersji Mail.Read lub Files.Read jako uprawnienia wysokiego ryzyka, jednak ataki, które widzieliśmy, są zwykle szeroko rozpowszechnionymi atakami wymierzonymi w użytkowników końcowych, a nie wyłudzaniem informacji wobec administratorów, którzy mogą rzeczywiście wyrazić zgodę na niebezpieczne uprawnienia. Zaleca się stosowanie aplikacji bąbelkowych z tymi "krytycznymi" poziomami uprawnień wpływu. Nawet jeśli aplikacje nie mają złośliwego zamiaru i jeśli zły aktor miał naruszyć tożsamość aplikacji, cała organizacja może być zagrożona.

Aby uzyskać uprawnienia o największym wpływie na ryzyko, zacznij tutaj:

  • Uprawnienia aplikacji (AppOnly/AppRole) wszystkich powyższych uprawnień, jeśli mają zastosowanie

Delegowane i AppOnly wersje następujących uprawnień:

  • Application.ReadWrite.All
  • Directory.ReadWrite.All
  • Domain.ReadWrite.All*
  • EduRoster.ReadWrite.All*
  • Group.ReadWrite.All
  • Member.Read.Hidden*
  • RoleManagement.ReadWrite.Directory
  • User.ReadWrite.All*
  • User.ManageCreds.All
  • Wszystkie inne uprawnienia AppOnly, które zezwalają na dostęp do zapisu

Aby uzyskać listę uprawnień o najniższym wpływie na ryzyko, zacznij tutaj:

  • User.Read
  • User.ReadBasic.All
  • Open_id
  • Poczta e-mail
  • Profil
  • Offline_access (tylko w przypadku parowania z innymi uprawnieniami na tej liście "najniższego ryzyka")

Wyświetlanie uprawnień

  1. Aby wyświetlić uprawnienia, przejdź do ekranu Rejestracja w aplikacji dla przedsiębiorstw.

    wyświetlanie uprawnień

  2. Wybierz pozycję Wyświetl uprawnienia interfejsu API.

    apipermissions

  3. Wybierz pozycję Dodaj uprawnienie , a zostanie wyświetlony następujący ekran.

    Api

  4. Wybierz pozycję Microsoft Graph , aby wyświetlić różne typy uprawnień.

    typy uprawnień

  5. Wybierz typ uprawnień używanych przez zarejestrowaną aplikację: Uprawnienia delegowane lub Uprawnieniaaplikacji. Na powyższej ilustracji wybrano pozycję Uprawnienia aplikacji .

  6. Możesz wyszukać jedno z uprawnień o dużym ryzyku, takich jak EduRoster.

    examplepermission

  7. Wybierz pozycję EduRoster i rozwiń uprawnienia.

    eduroster

  8. Teraz możesz przypisać lub przejrzeć te uprawnienia.

    Aby uzyskać więcej informacji, przeczytaj Uprawnienia programu Graph.

Przepływ pracy

Przepływ pracy badania udzielania zgody aplikacji

Możesz również wykonać następujące czynności:

  • Pobierz grant zgody aplikacji i inne przepływy pracy podręcznika reagowania na zdarzenia jako plik PDF.
  • Pobierz udzielanie zgody aplikacji i inne przepływy pracy podręcznika reagowania na zdarzenia jako plik programu Visio.

Lista kontrolna

Ta lista kontrolna służy do przeprowadzania weryfikacji zgody aplikacji.

  • Wymagania

    Upewnij się, że masz dostęp do dzierżawy jako Administracja globalnej. Jest to konto tylko w chmurze i nie jest częścią środowiska lokalnego.

  • Wskaźniki naruszenia (IoC)

    Sprawdź następujące wskaźniki naruszenia (IoC):

    • Kiedy zauważono zdarzenie?
    • Zakres dat zdarzenia (jak daleko po lewej stronie jest post celu?)
    • Liczba kont, których bezpieczeństwo jest naruszone
    • Nazwy kont, których bezpieczeństwo jest naruszone
    • Role kont, których bezpieczeństwo jest naruszone
    • Czy konta z naruszeniem zabezpieczeń są wysoce uprzywilejowane, użytkownik standardowy lub kombinacja
  • Role

    Musisz mieć przypisane następujące role:

    • administrator globalny prawa do dzierżawy w celu wykonania skryptu
    • Rola administratora lokalnego na komputerze, z którego będzie uruchamiany skrypt
  • Konfiguracja programu PowerShell

    Skonfiguruj środowisko programu PowerShell przy użyciu następujących elementów:

    • Zainstaluj moduł Azure AD PowerShell.
    • Uruchom aplikację Windows PowerShell z podwyższonym poziomem uprawnień. (Uruchom jako administrator).
    • Skonfiguruj program PowerShell do uruchamiania podpisanych skryptów.
    • Pobierz skrypt Get-AzureADPSPermissions.ps1 .
  • Wyzwalacze badania

    • Naruszenie konta
    • Ustawienia zgody aplikacji zmodyfikowane w dzierżawie
    • Wykryto przyczynę stanu alertu/inspekcji "ryzykownej aplikacji"
    • Zauważono dziwne aplikacje wyglądające

Możesz również pobrać grant zgody aplikacji i inne listy kontrolne podręcznika incydentu jako plik programu Excel.

Kroki badania

Do zbadania udzielania zgody aplikacji można użyć następujących dwóch metod:

  • Azure Portal
  • Skrypt programu PowerShell

Uwaga

Użycie Azure Portal pozwoli zobaczyć tylko Administracja granty zgody w ciągu ostatnich 90 dni i w oparciu o to zalecamy użycie metody skryptu programu PowerShell tylko w celu zmniejszenia kroków badania rejestracji przez osobę atakującą.

Metoda 1 — używanie Azure Portal

Za pomocą portalu usługi Azure Active Directory można znaleźć aplikacje, do których każdy użytkownik ma przyznane uprawnienia.

  1. Zaloguj się do Azure Portal jako administrator.
  2. Wybierz ikonę usługi Azure Active Directory .
  3. Wybierz pozycję Użytkownicy.
  4. Wybierz użytkownika, który chcesz przejrzeć.
  5. Wybierz pozycję Aplikacje.
  6. Możesz wyświetlić listę aplikacji przypisanych do użytkownika oraz uprawnienia, które mają te aplikacje.

Metoda 2 — używanie programu PowerShell

Istnieje kilka narzędzi programu PowerShell, których można użyć do zbadania nielegalnych udzielań zgody, takich jak:

Program PowerShell jest najłatwiejszym narzędziem i nie wymaga modyfikowania niczego w dzierżawie. Będziemy opierać nasze dochodzenie w sprawie dokumentacji publicznej z ataku nielegalnej zgody grantu.

Uruchom Get-AzureADPSPermissions.ps1polecenie , aby wyeksportować wszystkie udzielanie zgody OAuth i aplikacje OAuth dla wszystkich użytkowników w dzierżawie do pliku .csv . Zobacz sekcję Wymagania wstępne, aby pobrać i uruchomić Get-AzureADPSPermissions skrypt.

  1. Otwórz wystąpienie programu PowerShell jako administrator i otwórz folder, w którym został zapisany skrypt.

  2. Połącz się z katalogiem przy użyciu następującego polecenia Connect-AzureAD . Oto przykład.

    Connect-AzureAD -tenantid "2b1a14ac-2956-442f-9577-1234567890ab" -AccountId "user1@contoso.onmicrosoft.com"
    
  3. Uruchom to polecenie programu PowerShell.

    Get-AzureADPSPermissions.ps1 | Export-csv c:\temp\consentgrants\Permissions.csv -NoTypeInformation
    
  4. Po zakończeniu działania skryptu zaleca się rozłączenie sesji Azure AD za pomocą tego polecenia.

     Disconnect-AzureAD
    

    Uwaga

    Ukończenie skryptu może potrwać kilka godzin, w zależności od rozmiaru i skonfigurowanych uprawnień oraz połączenia.

  5. Skrypt tworzy plik o nazwie Permissions.csv.

  6. Otwórz plik, przefiltruj lub sformatuj dane w tabeli i zapisz jako plik xlxs (do filtrowania).

    Nagłówki kolumn dla danych wyjściowych są wyświetlane na tej ilustracji.

    Przykład nagłówków kolumn

  7. W kolumnie ConsentType(G) wyszukaj wartość AllPrinciples. Uprawnienie AllPrincipals umożliwia aplikacji klienckiej dostęp do zawartości wszystkich użytkowników w dzierżawie. Natywne aplikacje platformy Microsoft 365 wymagają tego uprawnienia do poprawnej pracy. Każda aplikacja spoza firmy Microsoft z tym uprawnieniem powinna być uważnie przeglądana.

  8. W kolumnie Uprawnienia(F) przejrzyj uprawnienia, które ma każda aplikacja delegowana. Poszukaj uprawnień do odczytu i zapisu lub *. Wszystkie uprawnienia i należy je dokładnie przejrzeć, ponieważ mogą nie być odpowiednie. Przykład kolumny uprawnień F

    Uwaga

    Przejrzyj konkretnych użytkowników, którzy mają przyznane zgody. Jeśli użytkownicy z wysokim profilem lub dużym wpływem mają przyznane nieodpowiednie zgody, należy dokładniej zbadać tę sprawę.

  9. W kolumnie ClientDisplayName(C)poszukaj aplikacji, które wydają się podejrzane, takie jak:

    • Aplikacje z błędnie napisanymi nazwami Przykład błędnie napisanej nazwy

    • Nietypowe lub blandzkie nazwy Przykład nietypowej nazwy

    • Nazwy brzmiące przez hakerów. Należy dokładnie przejrzeć te nazwy. Przykład nazwy hakera

Przykładowe dane wyjściowe: AllPrincipals i odczyt wszystkich zapisów. Aplikacje mogą nie mieć żadnych podejrzanych nazw, takich jak nazwy bland i używają grafu MS. Jednak przeprowadź badania i określ przeznaczenie aplikacji oraz rzeczywiste uprawnienia, które mają aplikacje w dzierżawie, jak pokazano w tym przykładzie.

Przykład aplikacji z elementem AllPrincipals ConsentType

Poniżej przedstawiono kilka przydatnych wskazówek dotyczących przeglądania dochodzeń dotyczących zasad zabezpieczeń informacji:

  1. ReplyURL/RedirectURL
    • Wyszukaj podejrzane adresy URL
  2. Czy adres URL jest hostowany w podejrzanej domenie?
    • Czy zostało to naruszone?
    • Czy domena jest niedawno zarejestrowana?
    • Czy jest to domena tymczasowa?
  3. Czy w rejestracji aplikacji istnieją linki do umowy dotyczącej usługi/usługi?
  4. Czy zawartość jest unikatowa i specyficzna dla aplikacji/wydawcy?
  5. Czy dzierżawa, która zarejestrowała aplikację, została nowo utworzona lub naruszona (na przykład aplikacja jest zarejestrowana przez użytkownika zagrożonego)?

Techniki ataków

Chociaż każdy atak ma tendencję do różnicy, podstawowe techniki ataku to:

  • Osoba atakująca rejestruje aplikację za pomocą dostawcy OAuth 2.0, takiego jak Azure AD.

  • Aplikacja jest skonfigurowana w sposób, który sprawia, że wydaje się uzasadniony. Na przykład osoby atakujące mogą używać nazwy popularnego produktu dostępnego w tym samym ekosystemie.

  • Osoba atakująca otrzymuje link bezpośrednio od użytkowników, co może odbywać się za pośrednictwem konwencjonalnego wyłudzania informacji na podstawie poczty e-mail, przez naruszenie niezwiązanej ze złośliwą witryną internetową lub za pośrednictwem innych technik.

  • Użytkownik wybiera link i jest wyświetlany autentyczny monit o zgodę z prośbą o udzielenie złośliwych uprawnień aplikacji do danych.

  • Jeśli użytkownik wybierze pozycję "Zaakceptuj", przyzna aplikacji uprawnienia dostępu do poufnych danych.

  • Aplikacja pobiera kod autoryzacji, który jest używany do tokenu dostępu i potencjalnie token odświeżania.

  • Token dostępu służy do tworzenia wywołań interfejsu API w imieniu użytkownika.

  • Jeśli użytkownik zaakceptuje, osoba atakująca może uzyskać dostęp do poczty użytkownika, reguł przesyłania dalej, plików, kontaktów, notatek, profilu i innych poufnych danych i zasobów.

    Przykład żądania uprawnień

Znajdowanie oznak ataku

  1. Otwórz Centrum zgodności zabezpieczeń&.

  2. Przejdź do pozycji Wyszukaj i wybierz pozycję Wyszukiwanie w dzienniku inspekcji.

  3. Wyszukaj (wszystkie działania i wszystkich użytkowników) i wprowadź datę rozpoczęcia i datę zakończenia, jeśli jest to wymagane, a następnie wybierz pozycję Wyszukaj.

    Przykład wyszukiwania w dzienniku inspekcji

  4. Wybierz pozycję Filtruj wyniki i w polu Działanie wprowadź wartość Zgoda na aplikację.

    Przykład filtrowania przeszukiwania dziennika inspekcji

  5. Jeśli masz działania w ramach zgody na udzielenie, kontynuuj zgodnie z poniższymi zaleceniami.

  6. Wybierz wynik, aby wyświetlić szczegóły działania. Wybierz pozycję Więcej informacji , aby uzyskać szczegółowe informacje o działaniu.

  7. Sprawdź, czy właściwość IsAdminContent jest ustawiona na wartość "True".

    Uwaga

    Ten proces może potrwać od 30 minut do 24 godzin, aby odpowiedni wpis dziennika inspekcji był wyświetlany w wynikach wyszukiwania po wystąpieniu zdarzenia.

    Zakres czasu przechowywania rekordu inspekcji i przeszukiwania w dzienniku inspekcji zależy od subskrypcji platformy Microsoft 365, a w szczególności typu licencji przypisanej do określonego użytkownika. Jeśli ta wartość jest prawdziwa, oznacza to, że osoba mająca dostęp administratora globalnego mogła udzielić szerokiego dostępu do danych. Jeśli jest to nieoczekiwane, wykonaj natychmiastowe kroki w celu potwierdzenia ataku.

Jak potwierdzić atak?

Jeśli masz co najmniej jedno wystąpienie wymienionych powyżej operacji we/wy, należy przeprowadzić dalsze badanie, aby pozytywnie potwierdzić, że wystąpił atak.

Tworzenie spisu aplikacji z dostępem w organizacji

Możesz spisać aplikacje dla użytkowników przy użyciu portalu usługi Azure Active Directory, programu PowerShell lub indywidualnie wyliczać dostęp do aplikacji.

  • Użyj portalu usługi Azure Active Directory do tworzenia spisu aplikacji i ich uprawnień. Ta metoda jest dokładna, ale możesz sprawdzić tylko jednego użytkownika jednocześnie, co może być czasochłonne, jeśli musisz sprawdzić uprawnienia kilku użytkowników.
  • Użyj programu PowerShell do tworzenia spisu aplikacji i ich uprawnień. Ta metoda jest najszybsza i najbardziej dokładna, z najmniejszą ilością nakładu pracy.
  • Zachęcamy użytkowników do indywidualnego sprawdzania swoich aplikacji i uprawnień oraz zgłaszania wyników administratorom w celu skorygowania.

Aplikacje spisu przypisane do użytkowników

Możesz użyć portalu usługi Azure Active Directory, aby wyświetlić listę aplikacji, do których każdy użytkownik udzielił uprawnień.

  1. Zaloguj się do witryny Azure Portal przy użyciu praw administracyjnych.
  2. Wybierz ikonę usługi Azure Active Directory .
  3. Wybierz pozycję Użytkownicy.
  4. Wybierz użytkownika, który chcesz przejrzeć.
  5. Wybierz pozycję Aplikacje. Możesz wyświetlić listę aplikacji przypisanych do użytkownika i uprawnienia przyznane tym aplikacjom.

Określanie zakresu ataku

Po zakończeniu tworzenia spisu 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 miała dostęp nielegalna aplikacja, oraz uprawnienia, które miała aplikacja. Dziennik inspekcji można przeszukiwać w Centrum zabezpieczeń i zgodności platformy Microsoft 365.

Ważne: Jeśli inspekcja nie została włączona przed możliwym atakiem, nie będzie można zbadać, ponieważ dane inspekcji nie będą dostępne.

Jak zapobiegać atakom i ograniczać ryzyko?

Jeśli Twoja organizacja ma odpowiednią licencję:

  • Użyj dodatkowych funkcji inspekcji aplikacji OAuth w Microsoft Defender for Cloud Apps.
  • Użyj skoroszytów usługi Azure Monitor do monitorowania uprawnień i działań związanych ze zgodą. Skoroszyt Usługi Consent Insights zawiera widok aplikacji według liczby żądań zgody zakończonych niepowodzeniem. Może to być pomocne w określaniu priorytetów aplikacji dla administratorów w celu przejrzenia i podjęcia decyzji o udzieleniu im zgody administratora.

Po zidentyfikowaniu aplikacji z nielegalnymi uprawnieniami natychmiast wyłącz aplikację zgodnie z instrukcjami w temacie Wyłączanie aplikacji. Następnie skontaktuj się z pomoc techniczna firmy Microsoft, aby zgłosić złośliwą aplikację.

Po wyłączeniu aplikacji w dzierżawie Azure AD nie można uzyskać nowych tokenów dostępu do danych, a inni użytkownicy nie będą mogli się zalogować ani wyrazić zgody na aplikację.

Uwaga

Jeśli podejrzewasz, że napotkasz złośliwą aplikację w organizacji, lepiej jest wyłączyć ją niż ją usunąć. Jeśli usuniesz tylko aplikację, może ona zostać zwrócona później, jeśli inny użytkownik wyrazi zgodę. Zamiast tego wyłącz aplikację, aby upewnić się, że nie może wrócić później.

Kroki ochrony organizacji

Istnieją różne typy ataków polegających na wyrażaniu zgody, ale w przypadku korzystania z tych zalecanych mechanizmów obronnych, które zniwelują wszelkie rodzaje ataków, zwłaszcza wyłudzanie zgody, gdzie osoby atakujące mogą nakłonić użytkowników do udzielenia złośliwej aplikacji dostępu do poufnych danych lub innych zasobów. Zamiast próbować ukraść hasło użytkownika, osoba atakująca szuka uprawnień do uzyskania dostępu do cennych danych przez osobę atakującą.

Aby zapobiec atakom ze strony zgody na Azure AD i Office 365, zapoznaj się z następującymi zaleceniami:

Ustawianie zasad

  • To ustawienie będzie miało wpływ na użytkownika i może nie mieć zastosowania do środowiska. Jeśli zezwolisz na wszelkie zgody, upewnij się, że administratorzy zatwierdzają żądania.

  • Zezwalaj na zgody dla aplikacji tylko od zweryfikowanych wydawców i określonych typów uprawnień sklasyfikowanych jako niski wpływ.

    Uwaga

    Powyższe zalecenia są sugerowane na podstawie najbardziej idealnych, bezpiecznych konfiguracji. Jednak ze względu na to, że zabezpieczenia są równoważące między funkcjami i operacjami, najbezpieczniejsze konfiguracje mogą powodować dodatkowe obciążenia dla administratorów. Jest to decyzja najlepiej podjęta po konsultacji z administratorami.

    Konfigurowanie zgody krokowej opartej na ryzyku — jest domyślnie włączona, jeśli zgoda użytkownika na udzielanie jest włączona

  • Zgoda krokowa oparta na ryzyku pomaga zmniejszyć narażenie użytkowników na złośliwe aplikacje, które zgłaszają nielegalne żądania zgody. Jeśli firma Microsoft wykryje ryzykowne żądanie zgody użytkownika końcowego, żądanie będzie wymagać "kroku" w celu zgody administratora. Ta funkcja jest domyślnie włączona, ale spowoduje to zmianę zachowania tylko po włączeniu zgody użytkownika końcowego.

  • Po wykryciu ryzykownego żądania zgody zostanie wyświetlony monit o wyrażenie zgody wskazujący, że wymagane jest zatwierdzenie przez administratora. Jeśli przepływ pracy żądania zgody administratora jest włączony, użytkownik może wysłać żądanie do administratora w celu dalszej weryfikacji bezpośrednio z poziomu monitu o wyrażenie zgody. Jeśli nie jest włączona, zostanie wyświetlony następujący komunikat:

    AADSTS90094: <clientAppDisplayName> musi mieć uprawnienia dostępu do zasobów w organizacji, które może udzielić tylko administrator. Poproś administratora o udzielenie uprawnienia do tej aplikacji, aby można było z niej korzystać. W takim przypadku zdarzenie inspekcji zostanie również zarejestrowane przy użyciu kategorii "ApplicationManagement" typu działania "Zgoda na aplikację" i Przyczyna stanu "Wykryto ryzykowną aplikację".

Uwaga

Wszystkie zadania wymagające zatwierdzenia przez administratora będą miały obciążenie operacyjne. Ustawienia zgody i zgody użytkownika są obecnie dostępne w wersji zapoznawczej . Gdy będzie ona gotowa do ogólnej dostępności, funkcja "Zezwalaj na zgodę użytkownika od zweryfikowanych wydawców, dla wybranych uprawnień" powinna zmniejszyć obciążenie administratorów i jest zalecana dla większości organizacji.

Zgody

Poinformuj deweloperów aplikacji, aby postępowali zgodnie z zaufanym ekosystemem aplikacji.
Aby ułatwić deweloperom tworzenie wysokiej jakości i bezpiecznych integracji, ogłaszamy również publiczną wersję zapoznawcza asystenta integracji w Azure AD rejestracji aplikacji.

  • Asystent integracji analizuje rejestrację aplikacji i testuje ją pod kątem zestawu zalecanych najlepszych rozwiązań w zakresie zabezpieczeń.
  • Asystent integracji wyróżnia najlepsze rozwiązania, które są istotne w każdej fazie cyklu życia integracji — od programowania po monitorowanie — i zapewnia prawidłowe skonfigurowanie każdego etapu.
  • Zaprojektowano ją tak, aby ułatwić ci pracę, niezależnie od tego, czy integrujesz pierwszą aplikację, czy też jesteś ekspertem, który chce poprawić swoje umiejętności.

Poinformuj organizację o taktykach zgody (taktyka wyłudzania informacji, zgoda administratora i użytkownika ):

  • Sprawdź, czy nie ma słabej pisowni i gramatyki. Jeśli wiadomość e-mail lub ekran zgody aplikacji zawiera błędy pisowni i gramatyczne, prawdopodobnie będzie to podejrzana aplikacja.
  • Zachowaj czujne oko na nazwy aplikacji i adresy URL domen. Osoby atakujące lubią fałszować nazwy aplikacji, które sprawiają, że pochodzą z legalnych aplikacji lub firm, ale umożliwiają wyrażanie zgody na złośliwą aplikację.
  • Przed wyrażeniem zgody na aplikację upewnij się, że rozpoznasz nazwę aplikacji i adres URL domeny.

Podwyższanie poziomu i zezwalanie na dostęp do zaufanych aplikacji

  • Podwyższanie poziomu użycia zweryfikowanych przez wydawcę aplikacji. Weryfikacja wydawcy pomaga administratorom i użytkownikom końcowym zrozumieć autentyczność deweloperów aplikacji. Do tej pory zweryfikowano ponad 660 aplikacji przez 390 wydawców.
  • Skonfiguruj zasady zgody aplikacji, zezwalając użytkownikom na wyrażanie zgody tylko na określone zaufane aplikacje, takie jak aplikacje opracowane przez organizację lub od zweryfikowanych wydawców.
  • Poinformuj organizację o tym, jak działają nasze uprawnienia i struktura wyrażania zgody.
  • Zapoznaj się z danymi i uprawnieniami, o które prosi aplikacja, oraz dowiedz się, jak działają uprawnienia i zgoda w ramach naszej platformy.
  • Upewnij się, że administratorzy wiedzą, jak zarządzać żądaniami zgody i oceniać je.

Przeprowadź inspekcję aplikacji i wyrażonych zgody w organizacji, aby upewnić się, że używane aplikacje uzyskują dostęp tylko do potrzebnych danych i przestrzegają zasad najniższych uprawnień.

Środki zaradcze

  • Informowanie klienta i zapewnianie świadomości i szkolenia na temat zabezpieczania udzielania zgody aplikacji
  • Zaostrzenie procesu udzielania zgody aplikacji za pomocą zasad organizacyjnych i mechanizmów kontroli technicznej
  • Konfigurowanie harmonogramu tworzenia w celu przeglądania aplikacji ze zgodą
  • Za pomocą programu PowerShell można wyłączyć podejrzane lub złośliwe aplikacje, wyłączając aplikację

Odwołania

Źródło zawartości tego artykułu jest następujące:

Dodatkowe podręczniki reagowania na zdarzenia

Zapoznaj się ze wskazówkami dotyczącymi identyfikowania i badania tych dodatkowych typów ataków:

Zasoby reagowania na zdarzenia