Delen via


Aanvalspaden voor OAuth-toepassingen onderzoeken in Defender for Cloud Apps (preview)

Microsoft Security Exposure Management helpt u de kwetsbaarheid en blootstellingsrisico's van uw bedrijf effectief te beheren. Door assets en technieken te combineren, illustreren aanvalspaden de end-to-end paden die aanvallers kunnen gebruiken om van een toegangspunt binnen uw organisatie naar uw kritieke assets te gaan. Microsoft Defender for Cloud Apps een toename waargenomen van aanvallers die OAuth-toepassingen gebruiken om toegang te krijgen tot gevoelige gegevens in bedrijfskritieke toepassingen zoals Microsoft Teams, SharePoint, Outlook en meer. Ter ondersteuning van onderzoek en risicobeperking zijn deze toepassingen geïntegreerd in de weergaven voor het aanvalspad en de kwetsbaarheid voor aanvallen in Microsoft Security Exposure Management.

Vereisten

Als u aan de slag wilt gaan met de functies van het OAuth-toepassingspad in Exposure Management, moet u voldoen aan de volgende vereisten.

  • Een Microsoft Defender for Cloud Apps-licentie waarvoor App Governance is ingeschakeld.

  • Microsoft 365-app-connector moet zijn geactiveerd. Zie Apps verbinden om zichtbaarheid en controle te krijgen met Microsoft Defender for Cloud Apps voor informatie over het verbinden en over welke van de app-connectors beveiligingsaanbeveling bieden.

  • Optioneel: als u volledige toegang wilt krijgen tot gegevens van het aanvalspad, raden we u aan een E5-beveiligingslicentie, Defender voor Eindpunt of Defender for Identity-licentie te hebben.

Vereiste rollen en machtigingen

Voor toegang tot alle Exposure Management-ervaringen hebt u een RBAC-rol (Unified Role-Based-Access-Control) of een Entra ID-rol nodig. Er is slechts één vereist.

  • Exposure Management (lezen) (Unified RBAC)

U kunt ook een van de volgende Entra ID-rollen gebruiken:

Machtiging Acties
Algemene beheerder (lees- en schrijfmachtigingen)
Beveiligings Beheer (lees- en schrijfmachtigingen)
Beveiligingsoperator (lees- en beperkte schrijfmachtigingen)
Globale lezer (leesmachtigingen)
Beveiligingslezer (leesmachtigingen)

Opmerking

Momenteel alleen beschikbaar in commerciële cloudomgevingen. Microsoft Security Exposure Management gegevens en mogelijkheden zijn momenteel niet beschikbaar in clouds van de Amerikaanse overheid: GCC, GCC High, DoD en China Gov.

Critical Asset Management - Service-principals

Microsoft Defender for Cloud Apps definieert een set OAuth-machtigingen voor kritieke bevoegdheden. OAuth-toepassingen met deze machtigingen worden beschouwd als waardevolle assets. Als een aanvaller is gecompromitteerd, kan deze hoge bevoegdheden krijgen voor SaaS-toepassingen. Om dit risico te weerspiegelen, behandelen aanvalspaden service-principals met deze machtigingen als doeldoelen.

Machtigingen voor kritieke assets weergeven

Als u de volledige lijst met machtigingen wilt weergeven, gaat u naar de Microsoft Defender-portal en gaat u naar Instellingen > Microsoft Defender XDR > Regels > Kritiek assetbeheer.

Schermopname van de pagina Kritiek assetbeheer in de Microsoft Defender portal.

Gebruikersstroom onderzoeken: aanvalspaden met OAuth-toepassingen weergeven

Zodra u weet welke machtigingen hoogwaardige doelen vertegenwoordigen, gebruikt u de volgende stappen om te onderzoeken hoe deze toepassingen worden weergegeven in de aanvalspaden van uw omgeving. Voor kleinere organisaties met een beheersbaar aantal aanvalspaden raden we aan deze gestructureerde aanpak te volgen om elk aanvalspad te onderzoeken:

Opmerking

OAuth-apps worden alleen weergegeven in de surface-kaart van het aanvalspad wanneer er specifieke omstandigheden worden gedetecteerd.
Een OAuth-app kan bijvoorbeeld worden weergegeven in het aanvalspad als een kwetsbaar onderdeel met een gemakkelijk exploiteerbaar toegangspunt wordt gedetecteerd. Met dit ingangspunt kunt u lateraal verplaatsen naar service-principals met hoge bevoegdheden.

  1. Ga naar Blootstellingsbeheer > Aanvalsoppervlak > Aanvalspaden.

  2. Filteren op 'Doeltype: AAD-service-principal'

    Schermopname van het servicetype aanvalspaden voor het toevoegen van een pricipal doel

  3. Selecteer het aanvalspad met de titel: 'Apparaat met beveiligingsproblemen met hoge ernst staat laterale verplaatsing naar service-principal met gevoelige machtigingen toe'

    Schermopname van de naam van het aanvalspad

  4. Klik op de knop Weergeven in kaart om het aanvalspad weer te geven.

    Schermopname van de knop Weergave in kaart

  5. Selecteer het teken + om knooppunten uit te vouwen en gedetailleerde verbindingen weer te geven.

    Schermopname van de surface-kaart voor aanvallen

  6. Wijs knooppunten en randen aan of selecteer deze om extra gegevens te verkennen, zoals welke machtigingen deze OAuth-app heeft.

    Schermopname van de machtigingen die zijn toegewezen aan de OAuth-app, zoals wordt weergegeven in de kaart van de kwetsbaarheid voor aanvallen

  7. Kopieer de naam van de OAuth-toepassing en plak deze in de zoekbalk op de pagina Toepassingen.

    Schermopname van het tabblad OAuth-toepassingen

  8. Selecteer de naam van de app om toegewezen machtigingen en gebruiks-inzichten te controleren, inclusief of machtigingen met hoge bevoegdheden actief worden gebruikt.

    Schermopname van de machtigingen die zijn toegewezen aan de Oauth-app

  9. Optioneel: als u bepaalt dat de OAuth-toepassing moet worden uitgeschakeld, kunt u deze uitschakelen via de pagina Toepassingen.

Gebruikersstroom van besluitvormer: prioriteit geven aan aanvalspad met behulp van chokepunten

Voor grotere organisaties met talloze aanvalspaden die niet handmatig kunnen worden onderzocht, raden we u aan om de gegevens van het aanvalspad te gebruiken en de ervaring Choke Points te gebruiken als hulpmiddel voor prioriteitstelling. Met deze benadering kunt u het volgende doen:

  • Identificeer assets die zijn verbonden met de meeste aanvalspaden.
  • Weloverwogen beslissingen nemen over welke assets prioriteit moeten krijgen voor onderzoek.
  • Filter op Microsoft Entra OAuth-app om te zien welke OAuth-apps betrokken zijn bij de meeste aanvalspaden.
  • Bepaal op welke OAuth-toepassingen machtigingen met minimale bevoegdheden moeten worden toegepast.

Je kunt als volgt aan de slag:

  1. Ga naar de pagina Aanvalspaden > chokepunten.

    Schermopname van de pagina met chokepunten

  2. Selecteer de naam van een chokepunt voor meer informatie over de belangrijkste aanvalspaden, zoals de naam, het toegangspunt en het doel.

  3. Klik op Straal van straal weergeven om het chokepunt in de Surface-kaart voor aanvallen verder te onderzoeken. Schermopname van de knop Straalstraal van weergave

Als het chokepunt een OAuth-toepassing is, gaat u verder met het onderzoek op de pagina Toepassingen, zoals beschreven in stap 7-9 hierboven.

Surface-kaart van aanvallen analyseren en zoeken met query's

In de kaart Kwetsbaarheid voor aanvallen ziet u verbindingen van apps in eigendom van de gebruiker, OAuth-apps en service-principals. Deze relatiegegevens zijn beschikbaar in:

  • ExposureGraphEdges-tabel (toont verbindingen)

  • ExposureGraphNodes-tabel (bevat knooppunteigenschappen zoals machtigingen)

Gebruik de volgende geavanceerde opsporingsquery om alle OAuth-toepassingen met kritieke machtigingen te identificeren:

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

Volgende stappen

Zie voor meer informatie: