Investigar caminhos de ataque da aplicação OAuth no Defender para Aplicativos de Nuvem (Pré-visualização)

Gerenciamento de Exposição da Segurança da Microsoft ajuda-o a gerir eficazmente a superfície de ataque e o risco de exposição da sua empresa. Ao combinar recursos e técnicas, os caminhos de ataque ilustram os caminhos ponto a ponto que os atacantes podem utilizar para passar de um ponto de entrada na sua organização para os seus recursos críticos. Microsoft Defender para Aplicativos de Nuvem observado um aumento de atacantes que utilizam aplicações OAuth para aceder a dados confidenciais em aplicações críticas para a empresa, como o Microsoft Teams, SharePoint, Outlook e muito mais. Para dar suporte à investigação e à mitigação, esses aplicativos estão integrados às exibições de caminho de ataque e de mapa da superfície de ataque no Segurança da Microsoft Exposure Management.

Pré-requisitos

Para começar a utilizar as funcionalidades do caminho de ataque da aplicação OAuth na Gestão da Exposição, certifique-se de que cumpre os seguintes requisitos.

Funções e permissões necessárias

Para aceder a todas as experiências de Gestão de Exposição, precisa de uma função Unified Role-Based-Access-Control (RBAC) ou uma função de Entra ID. Só é necessário um.

  • Gerenciamento de Exposição (somente leitura) (RBAC unificado)

Como alternativa, você pode usar uma das seguintes funções do Entra ID:

Permissão Ações
Administração de segurança (permissões de leitura e escrita)
Operador de Segurança (permissões de leitura e escrita limitadas)
Leitor Global (permissões de leitura)
Leitor de Segurança (permissões de leitura)

Observação

Atualmente disponível apenas em ambientes de cloud comercial. Os dados e os recursos do Gerenciamento de Exposição de Segurança da Microsoft estão atualmente indisponíveis nas nuvens do governo dos EUA — GCC, GCC High, DoD e China Gov.

Gestão de Recursos Críticos - Principais de Serviço

Entidades de Serviço são identidades que o Microsoft Entra ID atribui a aplicativos para que elas possam se autenticar e acessar recursos em nome do aplicativo, em vez de um usuário. Microsoft Defender para Aplicativos de Nuvem define um conjunto de permissões OAuth de privilégio crítico. As aplicações OAuth com estas permissões são consideradas recursos de alto valor. Se for comprometido, um atacante pode obter privilégios elevados para aplicações SaaS. Para refletir esse risco, os caminhos de ataque tratam as entidades de serviço com essas permissões como alvos.

Ver permissões para recursos críticos

Para ver a lista completa de permissões, aceda ao portal Microsoft Defender e navegue para Definições > Microsoft Defender XDR > Gestão > de recursos Críticos.

Captura de ecrã da página Gestão de recursos críticos no portal do Microsoft Defender.

Fluxo de investigação do usuário: Visualizar caminhos de ataque envolvendo aplicativos OAuth

Depois de compreender quais as permissões que representam destinos de valor elevado, utilize os seguintes passos para investigar como estas aplicações aparecem nos caminhos de ataque do seu ambiente. Para organizações mais pequenas com um número gerível de caminhos de ataque, recomendamos que siga esta abordagem estruturada para investigar cada caminho de ataque:

Observação

As aplicações OAuth só são apresentadas no mapa da superfície do caminho de ataque quando são detetadas condições específicas.
Por exemplo, uma aplicação OAuth poderá aparecer no caminho de ataque se for detetado um componente vulnerável com um ponto de entrada facilmente explorável. Este ponto de entrada permite o movimento lateral para principais de serviço com privilégios elevados.

  1. Acesse Gerenciamento de exposição > Superfície de ataque > Caminhos de ataque.

  2. Filtrar por "Tipo de destino: Principal de serviço do AAD"

    Captura de tela do serviço de caminhos de ataque para adicionar o tipo de destino principal

  3. Selecione o caminho de ataque intitulado: "Dispositivo com vulnerabilidades de alta gravidade permite movimentação lateral para principal de serviço com permissões sensíveis"

    Captura de ecrã do nome do caminho do ataque

  4. Clique no botão Ver no mapa para ver o caminho de ataque.

    Captura de tela do botão Ver no mapa

  5. Selecione o sinal + para expandir nós e ver ligações detalhadas.

    Captura de ecrã do mapa da superfície de ataque

  6. Paire o cursor do rato ou selecione nós e arestas para explorar dados adicionais, como as permissões que esta aplicação OAuth tem.

    Captura de ecrã a mostrar as permissões atribuídas à aplicação OAuth, conforme mostrado no mapa da superfície de ataque

  7. Copie o nome da aplicação OAuth e cole-o na barra de pesquisa na página Aplicações.

    Captura de ecrã a mostrar o separador Aplicações OAuth

  8. Selecione o nome da aplicação para rever as permissões atribuídas e as informações de utilização, incluindo se as permissões de privilégios elevados são ativamente utilizadas.

    Captura de ecrã a mostrar as permissões atribuídas à aplicação Oauth

  9. Opcional: se determinar que a aplicação OAuth deve ser desativada, pode desativá-la a partir da página Aplicações.

Fluxo do usuário tomador de decisão: Priorizar o caminho de ataque usando choke points

Para organizações maiores com inúmeros caminhos de ataque que não podem ser investigados manualmente, recomendamos usar dados sobre caminhos de ataque e utilizar a experiência Choke Points como ferramenta de priorização. Esta abordagem permite-lhe:

  • Identifique os recursos ligados com mais caminhos de ataque.
  • Tome decisões informadas sobre quais os recursos a priorizar para investigação.
  • Filtrar por aplicativo OAuth do Microsoft Entra para ver quais aplicativos OAuth estão envolvidos na maioria dos caminhos de ataque.
  • Decida a que aplicações OAuth devem aplicar menos permissões de privilégios.

Para começar:

  1. Acesse a página Caminhos de Ataque > Pontos de Estrangulamento.

    Captura de ecrã a mostrar a página de pontos de estrangulamento

  2. Selecione um nome de gargalo para ver mais detalhes sobre os principais caminhos de ataque, como nome, ponto de entrada e destino.

  3. Clique em Ver raio de explosão para investigar melhor o ponto de estrangulamento no Mapa de Superfície de Ataque. Captura de ecrã a mostrar o botão ver raio de explosão

Se o ponto de estrangulamento for um aplicativo OAuth, continue a investigação pesquisando o aplicativo pelo nome na página Aplicativos , examinando suas permissões atribuídas e insights de uso e, opcionalmente, desabilitando o aplicativo, se apropriado.

Analisar o mapa da superfície de ataque e investigar com consultas

No mapa da superfície de ataque, você pode ver conexões de aplicativos de propriedade do usuário, aplicativos OAuth e entidades de serviço. Estes dados de relação estão disponíveis em:

  • Tabela ExposureGraphEdges (mostra ligações)

  • Tabela ExposureGraphNodes (inclui propriedades de nós, como permissões)

Use a consulta de Busca Avançada a seguir para identificar todos os aplicativos OAuth com permissões críticas. Esta consulta une as tabelas ExposureGraphNodes e ExposureGraphEdges para localizar registros de aplicativos OAuth do Microsoft Entra que podem se autenticar como entidades de serviço classificadas como críticas (nível de criticidade 0) e que possuem permissões no Microsoft Graph. Use-o para descobrir quais aplicativos OAuth em seu locatário têm acesso de alto privilégio e para priorizá-los para revisão:

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

Próximas etapas

Para saber mais, confira: