Non-concordance des certificats de signature de fédération

HIGH

Description

Un tenant Microsoft Entra peut être fédéré avec un domaine externe pour établir une relation d'approbation avec un autre domaine à des fins d'authentification et d'autorisation. Les organisations utilisent la fédération pour déléguer l'authentification des utilisateurs Active Directory à leur Active Directory Federation Services (AD FS) sur site. (Remarque : le domaine externe n'est pas un « domaine » Active Directory). Cependant, si des acteurs malveillants obtiennent des privilèges élevés dans Microsoft Entra ID, ils peuvent exploiter ce mécanisme de fédération pour créer une porte dérobée en ajoutant leur propre certificat de signature de jeton secondaire et malveillant à la configuration de fédération légitime, avec leurs propres paramètres. Cette attaque permettrait d'exécuter les actions suivantes :

  • Usurpation d'identité : le certificat de signature de jeton secondaire et malveillant peut générer des jetons permettant à un attaquant de s'authentifier sous l'identité de n'importe quel utilisateur Microsoft Entra sans connaître ni réinitialiser son mot de passe. Cela comprend les utilisateurs « cloud seulement » (non hybrides) et les utilisateurs externes. Des attaques peuvent alors viser Microsoft Entra ID, Microsoft 365 (O365) et d'autres applications qui utilisent Microsoft Entra ID comme fournisseur d'identité (SSO), même si vous forcez l'authentification MFA (voir ci-dessous).
  • Élévation de privilèges : l'attaquant peut usurper l'identité de n'importe quel utilisateur, notamment ceux qui ont des privilèges Microsoft Entra ID.
  • Contournement de l'authentification multifacteur : avec l'authentification fédérée, le domaine externe de confiance prend le rôle de forcer l'authentification MFA. Le certificat de signature de jeton secondaire et malveillant peut alors affirmer faussement que l'authentification usurpée a utilisé l'authentification MFA ; Microsoft Entra ID va alors lui faire confiance et ne demandera plus de nouvelle authentification MFA. Ainsi, l'attaquant peut usurper l'identité de tous les utilisateurs, même s'il existe une protection MFA.
  • Persistance : l'ajout d'un certificat de signature de jeton secondaire et malveillant à un domaine fédéré existant est une technique furtive qui permet aux attaquants ayant compromis le tenant Microsoft Entra ID et acquis des privilèges élevés d'y accéder facilement à nouveau par la suite.

Cet indicateur d'exposition détecte toute absence de correspondance dans les attributs Sujet ou Éditeur entre les certificats de signature de jeton principaux et secondaires (le cas échéant), car cela pourrait indiquer que le certificat de signature de jeton secondaire est illégitime et potentiellement malveillant.

Veuillez également vous référer à l'indicateur d'exposition connexe « Porte dérobée de domaine fédéré connue ».

Le protocole de fédération utilisé pour transmettre la preuve d'authentification du domaine fédéré compromis au Microsoft Entra ID ciblé peut être WS-Federation ou SAML. Lors de l'utilisation de SAML, l'attaque ressemble à une attaque « Golden SAML », mais avec les principales différences suivantes :

  • Au lieu de voler la clé de signature SAML légitime d'une fédération existante, les attaquants injectent leur certificat de signature secondaire avec leur propre clé.
  • Les attaquants présentent le faux jeton au service de fédération pour obtenir un accès non autorisé à plusieurs systèmes, plutôt que de le présenter à un service spécifique.

Les autorisations microsoft.directory/domains/allProperties/allTasks et microsoft.directory/domains/federation/update donnent aux administrateurs la possibilité de modifier les domaines fédérés. Depuis novembre 2023, les rôles Microsoft Entra intégrés suivants disposent de cette autorisation, en plus d'éventuels rôles personnalisés :

Le groupe d'attaquants APT29 a exploité cette méthode lors de la fameuse attaque « Solorigate » de décembre 2020 contre SolarWinds, comme l'ont documenté Microsoft et Mandiant. Cette technique est également documentée dans plusieurs articles : « Faille de sécurité dans la fédération d’identité Azure AD et Office 365 », « Comment créer une porte dérobée vers Azure AD – partie 1 : fédération d'identités » et « Analyse poussée de la fédération d'identités Active Directory ».

Solution

Ce résultat indique une porte dérobée potentielle.

Pour commencer, examinez le certificat de signature de jeton secondaire et portez une attention particulière à tout attribut signalé qui ne correspond pas au certificat principal. Vérifiez la légitimité de ces attributs au sein de votre organisation. Confirmez auprès de vos administrateurs Entra ID les modifications apportées à la configuration de fédération du domaine signalé qui inclut ce certificat secondaire.

Un certificat de signature de jeton secondaire est couramment utilisé pour renouveler le certificat principal à l'approche de son expiration. Ce privilège ne devient un problème de sécurité que s'il est clairement malveillant ou non reconnu par les administrateurs, ce qui le rend potentiellement malveillant. Dans ce cas, lancez une procédure de réponse aux incidents avec une analyse forensique, afin de confirmer l'attaque présumée, d'identifier l'origine et l'heure de l'attaque, et d'évaluer l'étendue de l'intrusion potentielle.

Pour afficher la liste des domaines fédérés dans le portail Azure, naviguez jusqu'au panneau « Noms de domaine personnalisés » et recherchez ceux qui sont cochés dans la colonne « Fédérés ». Le nom du domaine potentiellement malveillant correspond à celui signalé dans la détection. Cependant, contrairement à l'API MS Graph, le portail Azure n'affiche pas les détails techniques de la fédération. Uti lisez les cmdlets PowerShell de l'API MS Graph pour lister les domaines avec Get-MgDomain et leur configuration de fédération avec Get-MgDomainFederationConfiguration, comme suit :

Connect-MgGraph -Scopes "Domain.Read.All"
Get-MgDomain -All | Where-Object { $_.AuthenticationType -eq "Federated" } | ForEach-Object { $_ ; Get-MgDomainFederationConfiguration -DomainId $_.Id }

Après avoir enregistré les preuves en vue d'une analyse forensique, il est conseillé de supprimer le certificat de signature de jeton secondaire et malveillant. Étant donné que Microsoft ne propose pas de méthode directe pour supprimer ce certificat particulier de la configuration de la fédération, il est plus simple de désactiver la fédération du domaine ou bien de supprimer complètement le domaine concerné pour effacer sa configuration de fédération, puis de le réactiver. Les utilisateurs s'appuyant sur ce domaine fédéré ne peuvent pas s'authentifier pendant ce processus. Si vous avez configuré la fédération à l'aide de Microsoft Entra Connect, utilisez-le pour effectuer cette opération. Si vous avez effectué l'opération manuellement, utilisez Update-MgDomainFederationConfiguration et la même méthode que celle utilisée initialement pour le réinitialiser. Vous pouvez suivre ce guide de remédiation de Microsoft : « Rotation d'urgence des certificats AD FS ».

Pour confirmer l'opération, assurez-vous que la détection signalée de cet indicateur d'exposition a été effacée. Il faut également tenir compte du fait que l'attaquant a pu mettre en place d'autres mécanismes de persistance tels que des portes dérobées. Faites appel à des experts en réponse aux incidents pour vous aider à identifier et à éliminer ces menaces supplémentaires.

Notez que ce type d'attaque exploite la fédération qui est une fonctionnalité standard et légitime de Microsoft Entra ID. Pour prévenir de futures attaques, limitez le nombre d'administrateurs autorisés à modifier les paramètres de fédération. Il s'agit d'une mesure proactive puisqu'un attaquant doit disposer de privilèges élevés pour créer une porte dérobée de ce type. Reportez-vous à la description de la vulnérabilité pour connaître les autorisations spécifiques et consulter la liste des rôles.

Détails de l'indicateur

Nom: Non-concordance des certificats de signature de fédération

Nom de code: FEDERATION-SIGNING-CERTIFICATES-MISMATCH

Sévérité: High

Type: Microsoft Entra ID Indicator of Exposure

Informations MITRE ATT&CK: