Netwrix 1Secure oferece visibilidade unificada de dados e identidade - gratuito por 14 dias com acesso total.Inicie um teste gratuito

Centro de recursosBlog

Automatizando a destruição do locatário Entra ID com IA

Automatizando a destruição do locatário Entra ID com IA

May 21, 2026

A automação do navegador assistida por IA pode transformar o Microsoft Graph Explorer em uma interface destrutiva de administração do Entra ID quando uma conta conectada já possui acesso privilegiado. Usando Claude para Chrome, JavaScript do lado do navegador e solicitações em lote do Microsoft Graph, ações destrutivas como exclusão de usuários, desativação de contas, redefinição de senhas, revogação de sessões e remoção de políticas de Acesso Condicional podem ser automatizadas diretamente da sessão do navegador.

Como a IA pode automatizar a destruição de tenants Entra ID através do Microsoft Graph, Graph Explorer e automação no lado do browser

Este artigo demonstra como a automação de browser assistida por IA pode ser usada para conduzir operações destrutivas no Microsoft Graph contra um tenant Entra ID quando a conta autenticada dispõe das permissões necessárias.

Como a IA automatiza o Graph Explorer para a destruição de tenants Entra ID

O Microsoft Graph Explorer é uma ferramenta baseada no browser para enviar pedidos à API do Microsoft Graph contra um tenant Entra ID. É normalmente utilizada por administradores e programadores para testar chamadas de API, inspeccionar respostas e perceber que permissões são necessárias. Neste artigo, utilizo-a para demonstrar como o acesso ao Microsoft Graph pode ser explorado para operações destrutivas automatizadas num tenant, e por que razão esses mesmos fluxos de trabalho se tornam perigosos quando combinados com um assistente de IA capaz de controlar o browser.

Exemplos reais de destruição de tenants

A destruição de tenants já não se limita à cifragem de servidores com ransomware. Em março de 2026, a Stryker divulgou um ciberataque que perturbou o seu ambiente Microsoft, e a Sygnia reportou posteriormente que o atacante utilizou o Microsoft Intune para apagar a infraestrutura virtual interna, incluindo portáteis, dispositivos móveis e servidores virtuais.

Em agosto de 2025, a Microsoft documentou o grupo Storm-0501 a utilizar técnicas de ransomware baseadas na cloud depois de migrar de um Active Directory on-premises para o Entra ID. O agente obteve privilégios de Global Administrator, elevou o acesso a subscrições Azure e eliminou dados na cloud e recursos de backup para impedir a recuperação antes de exigir resgate.

Utilizar o Claude for Chrome, as Developer Tools e o JavaScript no lado do browser para automatizar acções no Microsoft Graph

O Claude for Chrome integra o Claude directamente no browser, onde pode interagir com páginas web, inspeccionar elementos da interface e ajudar a executar acções através da mesma interface que um utilizador normalmente usaria de forma manual. Quando combinado com as Chrome Developer Tools e JavaScript no lado do browser, ultrapassa o simples prompting e torna possível automatizar fluxos de trabalho dentro do Graph Explorer, incluindo operações destrutivas do Microsoft Graph contra um tenant Entra ID.

Pré-requisitos

Reproduza este procedimento apenas num tenant de teste que lhe pertença e que esteja preparado para perder. Não execute operações destrutivas no Graph num tenant de produção ou em qualquer ambiente onde não tenha autorização explícita.

Neste artigo, descrevo como utilizei o Claude for Chrome para automatizar operações destrutivas no Entra ID directamente dentro do Microsoft Graph Explorer, recorrendo a JavaScript no lado do browser para tornar o fluxo de trabalho rápido e sem intervenção manual.

Antes de começar, abra o Microsoft Graph Explorer num browser com uma sessão activa de Global Administrator no seu tenant de teste e mantenha o Claude for Chrome aberto.

Executar uma destruição controlada de tenant num tenant de teste

Antes de tocar em qualquer coisa, pedi ao Claude para enumerar quatro coisas em simultâneo: todos os membros das funções de directório, todos os registos de aplicações Entra ID, todas as políticas de acesso condicional e todos os dispositivos registados. O que tornou este processo rápido foi a forma como o Claude obteve o token da API do Graph. Em vez de me pedir para o copiar a partir das ferramentas de programador do browser, aplicou um patch à função fetch nativa do browser com um pequeno interceptor.

      window._originalFetch = window.fetch;

window.fetch = function (...args) {
  const url = args[0];
  const options = args[1] || {};

  if (url.includes("graph.microsoft.com")) {
    const auth = (options.headers || {})["Authorization"];

    if (auth) {
      window._capturedToken = auth;
    }
  }

  return window._originalFetch.apply(this, args);
};
      

Da próxima vez que o Graph Explorer efectuou uma chamada à API, este interceptor capturou silenciosamente o token Bearer directamente dos cabeçalhos do pedido. O Claude utilizou então esse token para disparar as quatro consultas de enumeração ao mesmo tempo através de Promise.all(), pelo que, em vez de esperar que quatro chamadas separadas terminassem uma após a outra, todas correram em paralelo e os resultados regressaram quase instantaneamente. Para as funções de directório especificamente, obteve primeiro a lista de funções activas e depois obteve os membros de cada função em simultâneo, em vez de os percorrer um de cada vez. O resultado final foi um inventário completo de todo o tenant em poucos segundos. O token capturado inicialmente dispunha apenas de scopes de leitura, pelo que qualquer operação de escrita ou eliminação devolvia um 403. O Claude tratou de tudo através do separador Modify Permissions integrado no Graph Explorer.

Claude for Chrome interacting with Microsoft Graph Explorer in the browser
Figura 1. O Claude for Chrome a interagir com o Microsoft Graph Explorer no browser, utilizando passos automatizados para executar consultas à API do Graph, solicitar permissões e recolher os resultados da enumeração do Entra ID.

Para cada operação que exigia um scope de permissão mais elevado, o Claude navegou no Graph Explorer até ao endpoint relevante com o método HTTP correcto, mudou para o separador Modify Permissions, que apresentou automaticamente os scopes necessários, e clicou em Consent.

Após cada consentimento, accionou uma nova acção Run Query para que o Graph Explorer emitisse um novo token com os scopes actualizados, e voltou a capturá-lo através do mesmo interceptor. As permissões a que deu consentimento foram Application.ReadWrite.All para eliminar registos de aplicações, Policy.ReadWrite.ConditionalAccess para eliminar políticas de Conditional Access, RoleManagement.ReadWrite.Directory para remover contas das funções de directório e User.DeleteRestore.All para eliminar contas de utilizador.

Com as permissões necessárias presentes no token de acesso, o Claude executou um único bloco de JavaScript que efectuou as acções destrutivas em paralelo. O mesmo padrão foi utilizado para cada tipo de objecto: obter a lista completa, mapear cada objecto para um pedido DELETE, executar os pedidos com Promise.all() e registar o estado HTTP para cada resposta.

Claude for Chrome executing destructive Microsoft Graph operations
Figura 2. O Claude for Chrome a executar operações destrutivas do Microsoft Graph através do Graph Explorer, eliminando aplicações Entra ID, políticas de Conditional Access e dispositivos no tenant de teste.

Estes registos de auditoria do Entra ID mostram a limpeza a decorrer em tempo real. Às 08:06:19, foram registadas várias operações de eliminação como bem-sucedidas, incluindo a eliminação de dispositivos, a eliminação de aplicações e a remoção de service principals.

Entra ID audit logs showing successful delete operations
Figura 3. Registos de auditoria do Entra ID que mostram operações de eliminação bem-sucedidas para dispositivos, aplicações e service principals após a execução do fluxo de trabalho automatizado do Graph.

Esta captura de ecrã mostra o Claude for Chrome a gerar o bloco de JavaScript à direita, enquanto a mesma lógica é executada nas Chrome Developer Tools dentro da sessão do Graph Explorer. A saída da consola mostra que o script encontrou 2.551 utilizadores, marcou 2.550 para eliminação, protegeu 1 conta e começou então a devolver respostas 204 bem-sucedidas para as operações de eliminação.

Claude for Chrome generating a destructive JavaScript workflow
Figura 4. O Claude for Chrome a gerar um fluxo de trabalho de JavaScript destrutivo enquanto as Chrome Developer Tools o executam dentro da sessão do Graph Explorer, devolvendo respostas 204 bem-sucedidas para as operações de eliminação do Microsoft Graph.

Aqui mostra-se a fase de eliminação de utilizadores do fluxo de trabalho. Às 08:14:05, foram registados vários eventos Delete user em Core Directory e marcados como Success.

Entra ID audit logs showing successful user deletion events
Figura 5. Registos de auditoria do Entra ID que mostram eventos de eliminação de utilizadores bem-sucedidos registados em Core Directory após a execução do fluxo de trabalho automatizado do Graph.

A título de exemplo, restaurei parcialmente alguns dos utilizadores eliminados, enquanto outros permaneceram no contentor de itens eliminados. Em seguida, utilizei o Claude para automatizar a limpeza, gerando JavaScript no lado do browser capaz de eliminar permanentemente os restantes utilizadores eliminados directamente a partir da sessão do browser.

Estes registos de auditoria mostram o passo de eliminação permanente. O Entra ID registou vários eventos Hard Delete user em Core Directory e UserManagement, todos marcados como Success. Esta fase é diferente da fase anterior de soft-delete. Estes utilizadores foram removidos do contentor de itens eliminados, o que significa que já não eram recuperáveis através do fluxo normal de restauro do Entra ID.

Entra ID audit logs showing successful hard-delete events
Figura 6. Registos de auditoria do Entra ID que mostram eventos de hard-delete bem-sucedidos para objectos de utilizador, confirmando que os utilizadores foram removidos permanentemente do contentor de itens eliminados.

Tenant lockout

Um tenant lockout ocorre quando uma organização perde o acesso administrativo ao seu tenant Microsoft 365 ou Entra ID. Pode acontecer quando todas as contas Global Administrator ou equivalentes são eliminadas, desactivadas, bloqueadas por uma política de Conditional Access defeituosa ou protegidas por configurações de MFA que ninguém consegue satisfazer. Nesse momento, o tenant pode ainda existir, mas a organização já não consegue gerir utilizadores, aplicações, políticas, dispositivos ou definições de recuperação.

Em vez de eliminar objectos do tenant, o fluxo de trabalho seguinte centra-se no tenant lockout através da reposição de palavras-passe dos utilizadores, da revogação de sessões activas e da desactivação de todas as contas.

Claude for Chrome reporting the tenant lockout workflow
--- Figura 7. O Claude for Chrome a reportar o fluxo de trabalho de tenant lockout, mostrando reposições de palavras-passe, revogações de sessões e desactivações de contas bem-sucedidas em 1.103 utilizadores no tenant de teste.

Nos bastidores, o Claude utilizou o mesmo token de acesso do lado do browser obtido na sessão do Graph Explorer e construiu pedidos $batch do Microsoft Graph a partir do browser. Em vez de enviar um pedido por utilizador manualmente, agrupou os utilizadores em lotes de 20 e enviou três operações em lote por grupo: uma para repor a palavra-passe, uma para revogar as sessões de início de sessão activas e uma para desactivar a conta.

Cada lote foi enviado para https://graph.microsoft.com/v1.0/$batch com o token capturado no cabeçalho Authorization. Isto permitiu que o fluxo de trabalho fosse executado rapidamente e de forma repetida a partir do browser, enquanto o Graph processava as acções de bloqueio de conta em massa.

Claude for Chrome building Microsoft Graph $batch requests in the browser
Figura 8. O Claude for Chrome a construir pedidos $batch do Microsoft Graph no browser para repor palavras-passe, revogar sessões e desactivar contas em lotes de utilizadores agrupados.

Os registos de auditoria mostram o passo de desactivação de contas a reflectir-se no Entra ID. Vários utilizadores foram desactivados dentro da mesma curta janela temporal, e cada evento foi registado em Core Directory com o estado Success. Isto confirma que o fluxo de trabalho de lockout efectuou alterações reais no tenant de teste.

Entra ID audit logs showing successful account disablement events
Figura 9. Registos de auditoria do Entra ID que mostram eventos de desactivação de contas bem-sucedidos após a execução do fluxo de trabalho de tenant lockout através de pedidos em lote do Microsoft Graph.

Vê-se aqui uma actualização em massa do timestamp StsRefreshTokenValidFrom em várias contas de utilizador dentro de uma janela muito curta. Esta actividade é actualizada quando é accionada uma acção Revoke Refresh Tokens, que invalida todos os refresh tokens existentes para os utilizadores afectados e força uma nova autenticação.

Microsoft Entra ID audit log
Figura 10. Registo de auditoria do Microsoft Entra ID: actualizações em massa do timestamp StsRefreshTokenValidFrom.

Conclusão

Este exemplo mostra quão poucas ferramentas são necessárias uma vez que as permissões correctas já estão disponíveis. Com apenas um browser, o Graph Explorer, um assistente de IA baseado no browser e JavaScript no lado do browser, foi possível automatizar operações destrutivas no Entra ID sem escrever uma ferramenta autónoma, compilar código ou executar scripts externos. O importante não é que a IA tenha criado por si só um novo vector de ataque. O verdadeiro perigo é que a IA torna os fluxos de trabalho administrativos existentes mais rápidos, mais fáceis de encadear e mais fáceis de executar através do browser. O JavaScript no lado do browser actuou como camada de automação, transformando acções manuais do Graph Explorer em chamadas de API repetíveis que podiam ser executadas em paralelo. Descoberta de permissões, consentimento, actualização de tokens, pedidos ao Graph, processamento em lote, eliminação, reposição de palavras-passe, revogação de sessões e desactivação de contas podiam ser todos conduzidos a partir da mesma sessão do browser.

Compartilhar em

Saiba Mais

Sobre o autor

Asset Not Found

Huy Kha

Diretor de Pesquisa de Segurança