Investigar caminhos de ataque da aplicação OAuth no Defender for Cloud Apps (Pré-visualização)

Gestão da exposição de 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. O Microsoft Defender for Cloud Apps observou um aumento de atacantes a utilizarem aplicações OAuth para aceder a dados confidenciais em aplicações críticas para a atividade da empresa, como o Microsoft Teams, o SharePoint, o Outlook, entre outras. Para apoiar a investigação e a mitigação, estas aplicações estão integradas nas vistas de trajetória de ataque e de mapa da superfície de ataque na Gestão da Exposição de Segurança da Microsoft.

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 da Exposição, necessita de uma função de controlo de acesso baseado em funções unificado (RBAC) ou de uma função do Entra ID. Só é necessário um.

  • Gestão da Exposição (Leitura) (RBAC Unificado)

Em alternativa, pode utilizar uma das seguintes funções de 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)

Nota

Atualmente disponível apenas em ambientes de cloud comercial. Os dados e as capacidades do Microsoft Security Exposure Management estão atualmente indisponíveis nas nuvens governamentais dos EUA — GCC, GCC High, DoD e China Gov.

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

As entidades de serviço são identidades que o Microsoft Entra ID atribui às aplicações para que estas se possam autenticar e aceder a recursos em nome da aplicação, em vez de um utilizador. Microsoft Defender for Cloud Apps 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 este risco, os caminhos de ataque tratam os principais de serviço com estas permissões como objetivos de destino.

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 utilizador na investigação: Ver caminhos de ataque que envolvam aplicações 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:

Nota

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. Aceda a Gestão da Exposição > Superfície de ataque > Caminhos de ataque.

  2. Filtrar por 'Tipo de destino: AAD Service principal'

    Captura de ecrã da adição do tipo de destino principal no serviço de caminhos de ataque

  3. Selecione o caminho de ataque intitulado: "O dispositivo com vulnerabilidades de gravidade elevada permite o movimento lateral para o principal de serviço com permissões confidenciais"

    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 ecrã 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 de utilizador do responsável pela decisão: Priorizar o percurso de ataque com base em pontos de estrangulamento

Para organizações de maior dimensão com numerosos percursos de ataque que não possam ser investigados manualmente, recomendamos a utilização de dados sobre percursos de ataque e da 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 aplicação OAuth do Microsoft Entra para ver quais as aplicações OAuth envolvidas no maior número de caminhos de ataque.
  • Decida a que aplicações OAuth devem aplicar menos permissões de privilégios.

Para começar:

  1. Aceda à página Percursos de > ataque de pontos de estrangulamento.

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

  2. Selecione o nome do ponto de estrangulamento para ver mais detalhes sobre os principais caminhos de ataque, como o respetivo nome, ponto de entrada e alvo.

  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 uma aplicação OAuth, continue a investigação procurando a aplicação por nome na página de Aplicações , revisando as permissões e informações de utilização atribuídas, e opcionalmente desativando a aplicação, se apropriado.

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

No mapa da superfície de ataque, é possível ver ligações provenientes de aplicações do utilizador, aplicações OAuth e identidades 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 seguinte consulta de Caça Avançada para identificar todas as aplicações OAuth com permissões críticas. Esta consulta combina as tabelas ExposureGraphNodes e ExposureGraphEdges para encontrar registos de aplicações OAuth do Microsoft Entra que se podem autenticar como service principals classificados como críticos (nível de criticidade 0) e que têm permissões no Microsoft Graph. Use-o para descobrir quais as aplicações OAuth no seu tenant que têm acesso privilegiado e para as priorizar para análise:

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

Passos seguintes

Para mais informações, consulte: