CVE-2026-50391 : élévation locale de privilèges dans le client Windows group Policy
SCORE DE MENACE HERMES & DÉTOURNEMENT DU MOTEUR DE STRATÉGIES DE GROUPE
Cible :Windows Group Policy Client (gpsvc.dll / gpedit.dll) Le score CVSS v3.1 note la CVE-2026-50391 à 7.8 (HIGH, CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H). Le score Hermes évalue le risque à 87 (HIGH) car les stratégies de groupe constituent le mécanisme central de déploiement des configurations en entreprise, faisant de l'abus de ses extensions un vecteur privilégié de persistance et d'élévation SYSTEM furtive.
CVE-2026-50391: Windows Group Policy Client Elevation of PrivilegeVULNÉRABILITÉ
Software platform affected by security vulnerabilities and agentic attack patterns.
🔍 Pourquoi cette relation ? (Preuves & Provenance)
“Confirmed security vulnerability in Microsoft Windows & Windows Server documented in Hermes dossier.”
- [vulnerability_report]
- [government_confirmation]CISA verified active exploitation in the wild and mandated federal remediation deadline in KEV entry. — Source : Cybersecurity & Infrastructure Security Agency (CISA): CISA Adds CVE-2026-59822 to Known Exploited Vulnerabilities Catalog (Fiabilité : VERY_HIGH)
1. Contexte technique & matrice des versions affectées
Section intitulée « 1. Contexte technique & matrice des versions affectées »Le service client Group Policy (gpsvc) s’exécute au sein de svchost.exe avec les privilèges NT AUTHORITY\SYSTEM et applique les directives GPO diffusées par les contrôleurs de domaine.
| Paramètre | Spécification technique | Contexte threat intelligence |
|---|---|---|
| Identifiant CVE | CVE-2026-50391 | Bulletin officiel Microsoft MSRC Juillet 2026 |
| Composant vulnérable | Windows Group Policy Client (gpsvc.dll) | Moteur d’application des stratégies de groupe |
| Faiblesse CWE | CWE-269 : gestion incorrecte des privilèges | Condition de concurrence et suivi aveugle de jonctions NTFS |
| Score CVSS v3.1 | 7.8 (HIGH / sévérité opérationnelle Hermes 87) | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
| Vecteur d’attaque | Utilisateur local authentifié | Élévation vers NT AUTHORITY\SYSTEM |
| Systèmes affectés | Windows 10, Windows 11 (22H2-24H2), Windows Server 2019, 2022, 2025 | Tous les postes et serveurs Windows |
| Correctifs Microsoft | Mises à jour cumulatives de juillet 2026 (KB5040442, KB5040437, KB5040445) | Déploiement prioritaire sur les postes clients |
2. Décomposition technique & cause racine
Section intitulée « 2. Décomposition technique & cause racine »Lors de l’actualisation périodique des GPO (déclenchée par gpupdate /force ou automatiquement), gpsvc.dll exécute les extensions de script, de registre et de tâches planifiées.
Lors du traitement des stratégies utilisateur, gpsvc dépose les fichiers temporaires dans %LocalAppData%\Microsoft\GroupPolicy\History. Ce dossier appartenant à l’utilisateur interactif, un attaquant peut remplacer un sous-dossier par une jonction de répertoire NTFS pointant vers C:\Windows\System32 :
// Décomposition conceptuelle de l'écriture arbitraire dans CVE-2026-50391DWORD ApplyUserScriptPolicy( LPCWSTR pwszGpoPath, HANDLE hUserToken) { WCHAR wszStagingPath[MAX_PATH]; GetStagingDirectoryForUser(hUserToken, wszStagingPath, MAX_PATH);
// VULNERABILITÉ : gpsvc crée le fichier sous l'identité SYSTEM // sans spécifier le drapeau FILE_FLAG_OPEN_REPARSE_POINT ! HANDLE hFile = CreateFileW( wszStagingPath, GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL, NULL );
// Si wszStagingPath a été redirigé vers C:\Windows\System32 via une jonction, // le service SYSTEM écrit des fichiers arbitraires dans un répertoire protégé. WritePolicyData(hFile, pwszGpoPath); CloseHandle(hFile); return ERROR_SUCCESS;}En faisant pointer la jonction vers un sous-dossier de DLLs système (ex. C:\Windows\System32\wbem\), l’attaquant dépose une bibliothèque piégée chargée par un service Windows, conférant une exécution de code immédiate en tant que SYSTEM.
3. Scénarios d’attaque & chaînes de compromission
Section intitulée « 3. Scénarios d’attaque & chaînes de compromission »[ Utilisateur standard sur poste de travail ] │ ▼ (Création d'une jonction NTFS dans GroupPolicy\History)[ Déclenchement de l'actualisation des GPO (gpupdate) ] │ ▼ (CVE-2026-50391 Écriture arbitraire de fichier par gpsvc.dll sous SYSTEM)[ Dépôt d'une DLL malveillante dans System32 ] │ ▼ (Détournement d'ordre de chargement / DLL Hijacking)[ Élévation totale des privilèges NT AUTHORITY\SYSTEM ]Liens avec les fiches Active Directory d’Hermes Codex
Section intitulée « Liens avec les fiches Active Directory d’Hermes Codex »- Les GPO comme vecteurs de mouvement latéral et persistance : comment les attaquants abusent des politiques pour propager du code. Voir AD-31 : GPO, mouvement latéral et persistance.
- Jetons d’accès et contexte de sécurité Windows : mécanismes d’emprunt d’identité et transition du jeton utilisateur vers SYSTEM. Voir AD-06 : jetons d’accès et contexte de sécurité sous Windows.
- Administrateur local vs administrateur du domaine : conséquence de la compromission locale sur la posture globale du domaine. Voir AD-04 : administrateur local vs administrateur du domaine.
4. Détection forensique, artefacts & event IDs
Section intitulée « 4. Détection forensique, artefacts & event IDs »L’investigation DFIR de la CVE-2026-50391 repose sur la détection des créations de fichiers anomales par gpsvc et des événements opérationnels GPO :
Artefacts et event IDs essentiels
Section intitulée « Artefacts et event IDs essentiels »- Microsoft-Windows-GroupPolicy/operational event ID 5312 : “liste des stratégies de groupe appliquées” indiquant des rafraîchissements anormaux.
- Sysmon event ID 11 (FileCreate) : détection d’écritures de fichiers dans
C:\Windows\System32\où le processus initiateur estsvchost.exe -k netsvcs -p -s gpsvc. - Sysmon event ID 1 (ProcessCreate) : exécution de fichiers non signés dans les répertoires système consécutivement à un rafraîchissement GPO.
Requête KQL : détection d’écritures anormales par gpsvc
Section intitulée « Requête KQL : détection d’écritures anormales par gpsvc »DeviceFileEvents| where InitiatingProcessFileName =~ "svchost.exe"| where InitiatingProcessCommandLine has "gpsvc"| where FolderPath startswith "C:\\Windows\\System32\\"| where FileName endswith ".dll" or FileName endswith ".exe"| project Timestamp, DeviceName, FolderPath, FileName, ActionType, InitiatingProcessAccountName| order by Timestamp desc5. Remédiation, durcissement & mesures de mitigation
Section intitulée « 5. Remédiation, durcissement & mesures de mitigation »- Déploiement des correctifs de juillet 2026 : installer KB5040442 sur tous les postes de l’organisation.
- Restriction des liens symboliques : restreindre la création de liens symboliques aux seuls administrateurs (
Créer des liens symboliques : Administrateurs uniquement). - Contrôle applicatif WDAC / AppLocker : bloquer l’exécution de tout binaire ou DLL non signé dans les répertoires système.