☁️Entra IDPrivileged AccessIdentityMonitoringPermissions

CVE-2026-50481 Azure Active Directory Élévation de Privilèges : le CVSS 9.9 que vous ne pouvez pas corriger

Microsoft a noté CVE-2026-50481, une élévation de privilèges Azure Active Directory en CVSS 9.9, puis n'a publié aucun correctif : la résolution s'est faite côté serveur. Voici ce que vous pouvez encore vérifier dans votre propre tenant.

Younes AZABARPar Younes AZABAR12 min de lecture
CVE-2026-50481 Azure Active Directory Élévation de Privilèges : le CVSS 9.9 que vous ne pouvez pas corriger

Microsoft a attribué à CVE-2026-50481 Azure Active Directory Élévation de Privilèges un score de base CVSS 3.1 de 9.9 dans sa publication d'août 2026 — et n'a rien livré à installer. Voici à quoi ressemble un CVE critique de service cloud du point de vue client, et ce que vous pouvez encore vérifier dans votre propre tenant.

CVE-2026-50481 Azure Active Directory Élévation de Privilèges : ce que l'on sait

Microsoft a publié la faille le 6 août 2026. Sa description technique tient en une phrase : « Modification of assumed-immutable data (maid) in Azure Active Directory allows an authorized attacker to elevate privileges over a network. » La fiche MSRC la classe en CWE-471, indique Latest Software Release: N/A, et affiche une liste de remédiations vide. Le champ Customer Action Required indique No.

Cette combinaison est le vrai sujet. Un 9.9 dans l'annuaire qui authentifie tout votre parc Microsoft, et la position de l'éditeur se résume à « on l'a déjà corrigé ».

Voici ce que disent réellement les deux fiches faisant autorité.

ChampValeurSource
TitreAzure Active Directory Elevation of Privilege VulnerabilityMSRC
Publication2026-Aug, publiée le 6 août 2026MSRC
CVSS 3.1 base / temporel9.9 / 8.6MSRC
VecteurCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:L/E:U/RL:O/RC:CMSRC
FaiblesseCWE-471 — Modification of Assumed-Immutable Data (MAID)MSRC / NVD
Divulgation publique / ExploitationNon / NonMSRC
Action client requiseNonMSRC
Statut NVDAnalysé, publié le 7 août 2026NVD
Tag NVDexclusively-hosted-serviceNVD
CISA SSVC (6 août 2026)exploitation : aucune · automatisable : non · impact technique : totalNVD

Lisez le vecteur plutôt que le chiffre. PR:L signifie que l'attaquant est déjà authentifié avec de faibles privilèges — ce n'est pas une faille exposée sur Internet sans authentification, c'est une escalade disponible pour quiconque dispose d'un point d'ancrage dans votre tenant. S:C (scope changé) est ce qui pousse le score à 9.9 : l'impact déborde du composant vulnérable vers d'autres autorités de sécurité. E:U et RL:O — code d'exploitation non prouvé, correctif officiel disponible — font redescendre le score temporel à 8.6.

⚠️

⚠️ Avertissement : PR:L est le champ que la plupart des gens survolent sans s'arrêter. Chaque compte invité compromis, chaque service principal sur-permissionné, chaque utilisateur standard phishé est un point de départ valide pour une escalade PR:L. Votre nombre de points d'ancrage est votre exposition ici.

Pourquoi il n'y a rien à corriger

Azure Active Directory n'est pas un logiciel que vous exploitez vous-même. NVD étiquette CVE-2026-50481 exclusively-hosted-service et le associe au CPE cpe:2.3:a:microsoft:azure_active_directory:- — un produit sans version, parce qu'il n'existe qu'une seule instance en fonctionnement, opérée par Microsoft.

C'est une politique délibérée, pas un oubli. En juin 2024, Lisa Olson du MSRC a annoncé ce changement : « We are now announcing that we will issue CVEs for critical cloud service vulnerabilities, regardless of whether customers need to install a patch or to take other actions. » Le billet est explicite sur le marqueur : « In the CVE.org record, we will use the exclusively-hosted-service tag to indicate that there is no action required by the customer. »

Un CVE cloud est donc un avis de transparence, pas une tâche à traiter. La vulnérabilité existait dans l'annuaire multi-tenant, Microsoft l'a corrigée de son côté, et le CVE vous informe que cela s'est produit.

CVE-2026-50481 n'était pas seul. En analysant le document CVRF officiel de la publication d'août 2026 de Microsoft, 21 CVE de cette publication portent la mention Customer Action Required: No. Trois d'entre eux se situent directement dans le plan identité :

CVETag produitCVSSImpact
CVE-2026-50481Azure Active Directory9.9Élévation de privilèges
CVE-2026-59115Microsoft Entra Provisioning Service (SyncFabric)9.9Élévation de privilèges
CVE-2026-62869Azure Entra ID8.8Usurpation d'identité

Pour donner l'échelle, Cisco Talos a comptabilisé 421 vulnérabilités dans la publication d'août 2026, dont 62 marquées critiques, 40 d'entre elles en exécution de code à distance, avec exactement une exploitée dans la nature (CVE-2026-68820, une escalade WinSock AFD à CVSS 7.0). Talos classe CVE-2026-50481 sous « Other critical vulnerabilities » — mentionnée, pas mise en avant. Si vous avez trié août par « qu'est-ce que je déploie ce week-end », ce vers quoi s'est porté l'essentiel de l'attention des équipes — voir notre récapitulatif Patch Tuesday août 2026 des RCE contrôleur de domaine — celui-ci n'a généré aucun ticket.

Il existe un précédent qui montre que c'est une erreur. CVE-2025-55241, le problème d'Élévation de Privilèges Azure Entra ID publié par le MSRC le 4 septembre 2025, a obtenu un score plein de CVSS 10.0 et portait lui aussi la mention Customer Action Required : No. Le schéma est désormais bien établi : les vulnérabilités identité de plus haute sévérité de l'ère cloud arrivent sous forme de notifications, pas de correctifs.

Ce que Microsoft n'a pas publié

Soyons clairs sur la limite de ce qui est connu, car elle est étroite.

Microsoft n'a publié aucune chaîne d'attaque, aucun critère de tenant affecté, aucun indicateur de compromission, aucune fenêtre d'exploitation, ni aucune déclaration sur le fait que la faille ait été exploitée avant le correctif. Le seul signal sur la faiblesse est le mapping CWE. CWE-471 décrit un produit qui « does not properly protect an assumed-immutable element from being modified by an attacker » — une entrée, selon MITRE, « critical enough to the functioning of the application that it should not be modifiable at all, but it is. » MITRE liste les conséquences comme Modify Application Data et Unexpected State.

Cela vous donne la forme de la classe de bug. Cela ne vous dit pas quel attribut, quelle claim ou quel identifiant dans Azure AD était modifiable alors qu'il n'aurait pas dû l'être. Quiconque publie aujourd'hui un chemin d'exploitation précis pour CVE-2026-50481 extrapole à partir du CWE, il ne rapporte pas un fait établi.

ℹ️

ℹ️ Remarque : l'évaluation SSVC de la CISA enregistrée le 6 août 2026 fixe l'exploitation à none et l'automatisable à no, tout en évaluant l'impact technique à total. Rien observé dans la nature ; compromission totale si cela devait se produire.

Ce sur quoi vous pouvez agir, c'est le résidu. Si une escalade au niveau de l'annuaire était accessible avant le correctif côté service, les artefacts de toute utilisation se trouveraient dans les journaux de votre propre tenant — pas dans la sortie d'un scanner.

Détection

Il n'existe pas de signature pour CVE-2026-50481, et tout éditeur qui en revendique une vous vend une supposition. Ce que vous pouvez faire, c'est chasser le résultat que la faille permet : un privilège apparu sans passer par un chemin d'approbation légitime. Cette chasse vaut la peine d'être menée indépendamment de ce CVE.

Le temps compte. Microsoft Entra conserve les journaux d'audit pendant sept jours en Entra ID Free et 30 jours en P1 et P2. Les journaux d'activité Microsoft Graph nécessitent P1 ou P2 et ne sont pas conservés du tout tant qu'ils n'ont pas déjà été routés vers un workspace ou un compte de stockage. Faites le calcul avant de planifier la chasse. La divulgation du 6 août 2026 est déjà passée la fenêtre de sept jours de l'offre Free, donc un tenant Free n'a plus rien à interroger. Un tenant P1 ou P2 est encore dans la fenêtre de 30 jours — mais seulement jusqu'à environ le 5 septembre 2026, après quoi cette preuve disparaît sauf si elle a été exportée. Corrigez d'abord le pipeline ; voir les lacunes de rétention des journaux Entra ID et des diagnostic settings.

IndicateurSource du journalPourquoi c'est important
Add member to role outside of PIM (permanent)Journaux d'audit Entra (Core Directory)Privilège permanent accordé en contournant le workflow d'approbation
Add member to role sans ticket de changement correspondantJournaux d'audit EntraL'attribution générique de rôle d'annuaire — comparez-la à votre registre de changements
Add eligible member to role par un acteur inattenduJournaux d'audit Entra (service PIM)L'éligibilité est plus discrète que l'activation et persiste plus longtemps
Add app role assignment to service principalJournaux d'audit EntraUne identité non humaine qui acquiert des permissions d'annuaire
Add role definition / Add role assignment to role definitionJournaux d'audit EntraUn rôle personnalisé construit pour porter un privilège sous un nom anodin
POST/PATCH vers /roleManagement ou /directoryRolesMicrosoftGraphActivityLogsLa vue au niveau API de la même attribution, y compris l'application appelante

Chaque nom d'activité ci-dessus est repris tel quel depuis la référence des activités d'audit de Microsoft.

Commencez par les changements de rôle d'annuaire sur toute votre fenêtre de rétention :

AuditLogs
| where TimeGenerated > ago(30d)
| where LoggedByService in ("Core Directory", "PIM")
| where ActivityDisplayName has "role"
| extend ActorUser = tostring(InitiatedBy.user.userPrincipalName),
         ActorApp  = tostring(InitiatedBy.app.displayName)
| project TimeGenerated, ActivityDisplayName, ActorUser, ActorApp,
          Result, TargetResources, CorrelationId
| order by TimeGenerated desc

Puis basculez vers la couche API, où une identité de charge de travail agissant pour son propre compte est visible d'une manière que le journal d'audit de l'annuaire seul peut masquer :

MicrosoftGraphActivityLogs
| where TimeGenerated > ago(30d)
| where RequestMethod in ("POST", "PATCH", "PUT", "DELETE")
| where RequestUri has_any ("/directoryRoles", "/roleManagement",
                            "/servicePrincipals", "/applications")
| where ResponseStatusCode between (200 .. 299)
| project TimeGenerated, RequestMethod, RequestUri, ResponseStatusCode,
          UserId, ServicePrincipalId, AppId, IPAddress, Roles, Scopes, Wids
| order by TimeGenerated desc

Notez la valeur du service : Privileged Identity Management est journalisé comme PIM, pas sous son nom complet — le guide des opérations de sécurité pour comptes privilégiés de Microsoft filtre lui-même ces événements avec Service = PIM. L'écrire en toutes lettres renvoie un jeu de résultats vide.

La colonne Wids contient les rôles à l'échelle du tenant portés dans le token de l'appelant, et ServicePrincipalId distingue les identités de charge de travail des utilisateurs interactifs — les deux champs qui transforment un mur d'appels Graph en une question à laquelle on peut répondre.

💡

💡 Astuce : les entrées d'audit Entra sont immuables — Microsoft indique que « Entries in the audit logs are system generated and can't be changed or deleted. » Un attaquant ayant atteint votre annuaire ne peut pas effacer cette trace. Il ne peut qu'attendre l'expiration de la rétention, ce qui explique précisément pourquoi le pipeline d'export est le contrôle qui compte réellement.

Remédiation

Vous ne pouvez pas remédier à la vulnérabilité elle-même. Vous pouvez remédier au rayon d'impact, qui est la seule variable que vous contrôlez face à un CVE de service hébergé.

💡

💡 Gain rapide : exportez dès aujourd'hui les journaux d'audit Entra et d'activité Graph vers un workspace avec une rétention supérieure à 30 jours. Chaque futur CVE cloud sera — ou ne sera pas — investigable rétroactivement selon ce seul réglage.

  1. Ré-établissez la référence des porteurs de rôles privilégiés. Récupérez la composition actuelle de chaque rôle d'annuaire et comparez-la à une liste de référence saine antérieure au 6 août 2026. Tout ajout que vous ne pouvez pas relier à un enregistrement de changement est le constat — que cela vienne ou non de ce CVE.

  2. Éliminez le privilège permanent. Les escalades PR:L rapportent proportionnellement à la quantité de privilège permanent qui attend en dormance. Basculez les attributions permanentes vers des rôles éligibles PIM avec approbation et MFA à l'activation. Notre guide sur pourquoi les tenants accumulent trop d'administrateurs globaux couvre l'étape d'inventaire.

  3. Auditez les identités non humaines. Les service principals détenant des rôles d'annuaire ou des permissions d'application Graph à haut privilège sont le point d'ancrage PR:L le plus courant dans un tenant moderne, et ils ne sont ni phishés, ni rotés, ni offboardés. Voir service principals Entra avec des rôles admin sur-privilégiés.

  4. Vérifiez l'intégrité des comptes break-glass. Les comptes d'accès d'urgence sont exclus de Conditional Access par conception, ce qui en fait la cible la plus précieuse de toute escalade. Confirmez que les identifiants, les exclusions et les alertes de connexion correspondent toujours à l'intention initiale — lacunes des comptes break-glass.

  5. Intégrez les CVE cloud à votre processus de tri. Filtrez le Security Update Guide sur la colonne Customer Action Required que le MSRC a ajoutée exactement dans ce but. « No action required » est une déclaration sur le patching, pas sur l'assurance — les 21 CVE sans action requise d'août 2026 méritent chacun une décision, même si cette décision est « constaté, pas d'exposition ».

  6. Fermez la porte des invités et de l'externe. PR:L compte tout principal authentifié. Les comptes invités obsolètes et des paramètres d'invitation B2B non restreints élargissent l'ensemble des comptes depuis lesquels une escalade peut démarrer.

Comment EtcSec détecte cela

EtcSec ne peut pas détecter une vulnérabilité à l'intérieur du service Microsoft lui-même — personne ne le peut, depuis l'extérieur. Ce qu'un audit Entra EtcSec détecte, c'est l'exposition qui décide si une escalade d'annuaire reste une note de bas de page ou devient un incident : PA_PERMANENT_ADMIN_ASSIGNMENTS pour le privilège permanent qui n'expire jamais, PA_PIM_NOT_ENABLED là où aucune limite just-in-time n'existe, PA_TOO_MANY_GLOBAL_ADMINS pour un Tier 0 surdimensionné, SP_HIGH_PRIVILEGE pour les service principals détenant des rôles d'annuaire privilégiés, et AZ_GROUP_PRIVILEGED_CHANGES pour les groupes privilégiés dont personne ne surveille les changements de composition.

C'est la répartition honnête du travail face à un CVE de service hébergé. Microsoft possède le correctif. Vous possédez la mesure dans laquelle ce correctif comptait — et les deux moitiés de cette phrase sont auditables. Pour la séquence de revue complète, voir comment auditer la sécurité de Microsoft Entra ID.

ℹ️

ℹ️ Remarque : EtcSec vérifie automatiquement ces faiblesses d'accès privilégié à chaque audit AD/Azure. Lancez un audit gratuit pour vérifier votre environnement.