Código HTML do Conteúdo

Post: Falha no ID do Microsoft Entra permitiu sequestrar o inquilino de qualquer empresa


<div> <div> <p>Uma combina&ccedil;&atilde;o cr&iacute;tica de componentes herdados poderia ter permitido acesso completo ao locat&aacute;rio do Microsoft Entra ID de todas as empresas do mundo.</p> <p>A combina&ccedil;&atilde;o fatal incluiu tokens n&atilde;o documentados chamados &ldquo;tokens de ator&rdquo; e uma vulnerabilidade na API do Azure AD Graph (CVE-2025-55241) que permitia que os tokens funcionassem com o ambiente de ID do Entra de qualquer organiza&ccedil;&atilde;o.</p> <p>Um agente de amea&ccedil;a que explorasse o problema teria acesso a uma s&eacute;rie de dados altamente confidenciais sem deixar rastros nos logs do ambiente de destino, exceto por suas pr&oacute;prias a&ccedil;&otilde;es.</p> <p>O Entra ID &eacute; o servi&ccedil;o de gerenciamento de identidade e acesso (IAM) baseado em nuvem da Microsoft, anteriormente conhecido como Azure Active Directory (Azure AD), que fornece &agrave;s organiza&ccedil;&otilde;es logon &uacute;nico, autentica&ccedil;&atilde;o multifator e controles de seguran&ccedil;a em aplicativos e recursos.</p> <p>Uma inst&acirc;ncia dedicada do Entra ID representa uma &uacute;nica organiza&ccedil;&atilde;o e gerencia o acesso seguro a todos os aplicativos usados, tanto no local quanto na nuvem.</p> <p>Isso pode incluir servi&ccedil;os do Microsoft 365, produtos SaaS personalizados e de terceiros, como Salesforce, Dropbox ou aplicativos de nuvem do Google, Amazon ou SAP.</p> <p>Pesquisador de seguran&ccedil;a Dirk-jan Mollema, fundador da seguran&ccedil;a ofensiva<a href="https://outsidersecurity.nl/" rel="nofollow noopener" target="_blank">Seguran&ccedil;a externa</a>, descobriu uma falha de valida&ccedil;&atilde;o de token que lhe dava privil&eacute;gios de administrador global em todos os locat&aacute;rios do Entra ID.</p> <p>Esse n&iacute;vel de acesso permite o comprometimento total do locat&aacute;rio e abre a porta para qualquer servi&ccedil;o autenticado por meio do Entra ID.</p> <h3>Representando qualquer usu&aacute;rio no locat&aacute;rio</h3> <p>Em uma postagem t&eacute;cnica no blog, Mollema explica que os tokens de ator s&atilde;o emitidos por um servi&ccedil;o legado chamado Access Control Service, que &ldquo;&eacute; usado para autentica&ccedil;&atilde;o com aplicativos do SharePoint e tamb&eacute;m parece ser usado pela Microsoft internamente&rdquo;.</p> <p>O pesquisador os encontrou enquanto investigava configura&ccedil;&otilde;es h&iacute;bridas do Exchange. Ele notou que o Exchange os solicitava ao se comunicar com outros servi&ccedil;os em nome de um usu&aacute;rio.</p> <p>&ldquo;O token de ator permite que ele &lsquo;atue&rsquo; como outro usu&aacute;rio no locat&aacute;rio ao se comunicar com o Exchange Online, o SharePoint e, como se v&ecirc;, o Azure AD Graph&rdquo; &ndash; <a href="https://dirkjanm.io/obtaining-global-admin-in-every-entra-id-tenant-with-actor-tokens/" rel="nofollow noopener" target="_blank">Dirk-jan Mollema</a></p> <p>Os tokens de ator n&atilde;o s&atilde;o assinados, o que significa que podem ser usados para representar qualquer usu&aacute;rio no locat&aacute;rio e t&ecirc;m validade de 24 horas sem a possibilidade de serem revogados durante esse per&iacute;odo.</p> <p>Mollema diz que &ldquo;todo esse design de token de ator &eacute; algo que nunca deveria ter existido&rdquo;, porque eles n&atilde;o t&ecirc;m os controles de seguran&ccedil;a necess&aacute;rios adequados:</p> <ul> <li>n&atilde;o h&aacute; logs quando os tokens de ator s&atilde;o emitidos</li> <li>como esses servi&ccedil;os podem criar os tokens de representa&ccedil;&atilde;o n&atilde;o assinados sem se comunicar com o ID do Entra, tamb&eacute;m n&atilde;o h&aacute; logs quando eles s&atilde;o criados ou usados</li> <li>eles n&atilde;o podem ser revogados dentro de sua validade de 24 horas</li> <li>eles ignoram completamente todas as restri&ccedil;&otilde;es configuradas no Acesso Condicional</li> <li>Temos que confiar no registro do provedor de recursos para saber que esses tokens foram usados no locat&aacute;rio</li> </ul> <p>O pesquisador diz que a Microsoft depende de tokens de ator internamente para comunica&ccedil;&atilde;o servi&ccedil;o a servi&ccedil;o e que a empresa planeja remov&ecirc;-los.</p> <p>A Microsoft os chama de &ldquo;<a href="https://www.microsoft.com/en-us/security/blog/2025/07/08/enhancing-microsoft-365-security-by-eliminating-high-privilege-access/" rel="nofollow noopener" target="_blank">acesso com privil&eacute;gios elevados (HPA)</a>&rdquo; que permite que um aplicativo ou servi&ccedil;o &ldquo;se passe por outros usu&aacute;rios sem fornecer qualquer prova do contexto do usu&aacute;rio.</p> <p>Ao testar v&aacute;rias maneiras de usar um token de ator, Mollema alterou a ID do locat&aacute;rio para uma diferente daquela que gerou o token e a enviou para a API do Graph do Azure AD preterida (<a href="http://graph.windows.net" rel="nofollow noopener" target="_blank">graph.windows.net</a>), esperando uma mensagem de &ldquo;acesso negado&rdquo;.</p> <p>Em vez disso, o erro que o pesquisador viu indicou que o token era v&aacute;lido, mas o acesso n&atilde;o foi autorizado porque a identidade do usu&aacute;rio n&atilde;o foi encontrada no locat&aacute;rio.</p> <div> <p><img decoding="async" alt="O erro do Azure AD Graph indica que o token &eacute; v&aacute;lido, mas o usu&aacute;rio n&atilde;o existe" height="184" src="https://datalake.azaeo.com/wp-content/uploads/2025/09/Azure-AD-Graph-API-error_Mollema.png" width="900 /&gt;&lt;/div&gt; &lt;p&gt;Mollema tried again, this time with a valid user ID from the targeted tenant, and saw Azure AD Graph API return the requested data.&lt;/p&gt; &lt;p&gt;&ldquo;I tested this in a few more test tenants I had access to, to make sure I was not crazy, but I could indeed access data in other tenants, as long as I knew their tenant ID (which is public information) and the netId of a user in that tenant.&rdquo;&lt;/p&gt; &lt;p&gt;Using the same actor token, the researcher was able to impersonate the &lt;a href=">Administrador global no locat&aacute;rio de destino e executar todas as a&ccedil;&otilde;es associadas &agrave; fun&ccedil;&atilde;o (por exemplo, gerenciar e criar usu&aacute;rios de diferentes fun&ccedil;&otilde;es, modificar configura&ccedil;&otilde;es, redefinir senhas, adicionar administradores).</p> <p>Mollema destaca que nenhuma das a&ccedil;&otilde;es necess&aacute;rias para obter privil&eacute;gios de administrador global gerou logs no locat&aacute;rio da v&iacute;tima.</p> <p>Do ponto de vista de um invasor, explorar os problemas teria sido poss&iacute;vel em algumas etapas, come&ccedil;ando com a gera&ccedil;&atilde;o do token de ator de um locat&aacute;rio sob seu controle:</p> <ul> <li>Encontrar a ID do locat&aacute;rio para o ambiente de destino pode ser feito com APIs p&uacute;blicas com base no nome de dom&iacute;nio</li> <li>Localizando um netId v&aacute;lido de um usu&aacute;rio regular no locat&aacute;rio de destino</li> <li>Criando uma personifica&ccedil;&atilde;oion token com o token de ator do locat&aacute;rio invasor usando o ID do locat&aacute;rio e <em>netId</em> do usu&aacute;rio no locat&aacute;rio v&iacute;tima</li> <li>Listando todos os Administradores Globais no locat&aacute;rio e seus <em>netId</em></li> <li>Criar um token de representa&ccedil;&atilde;o para o administrador global</li> <li>Executando qualquer a&ccedil;&atilde;o de leitura/grava&ccedil;&atilde;o por meio da API do Graph do Azure AD</li> </ul> <p>Mollema observa que apenas a atividade na &uacute;ltima etapa seria registrada no inquilino v&iacute;tima.</p> <p>&Eacute; importante observar que a Microsoft iniciou o processo de substitui&ccedil;&atilde;o do servi&ccedil;o Azure AD Graph API em setembro do ano passado.</p> <p>No final de junho, a empresa alertou que os aplicativos configurados para <a href="https://learn.microsoft.com/en-us/graph/applications-authenticationbehaviors?tabs=http#allow-extended-azure-ad-graph-access-until-june-30-2025" rel="nofollow noopener" target="_blank">Acesso estendido</a> mas ainda usava o Azure AD Graph, n&atilde;o seria mais capaz de usar as APIs a partir do in&iacute;cio de setembro de 2025.</p> <p>Mollema relatou os problemas &agrave; Microsoft em 14 de julho e a empresa confirmou que o problema foi resolvido nove dias depois.</p> <p>Em 4 de setembro, a Microsoft tamb&eacute;m <a href="https://msrc.microsoft.com/update-guide/vulnerability/CVE-2025-55241" rel="nofollow noopener" target="_blank">CVE-2025-55241 corrigido</a>, descrevendo-o como uma vulnerabilidade cr&iacute;tica de escalonamento de privil&eacute;gios no Azure Entra.</p> <p><a href="https://hubs.li/Q03B5Kw_0" rel="noopener sponsored" target="_blank"><br /> <img decoding="async" alt="Relat&oacute;rio Picus Blue 2025" src="https://datalake.azaeo.com/wp-content/uploads/2025/08/blue-report-2025.jpg"><br /> </a> </p> </div> </div></div>