La stratégie de groupe applique de la configuration et des scripts depuis le domaine vers les ordinateurs et utilisateurs dans sa portée. Un objet de stratégie de groupe (GPO) est un objet d'annuaire plus un dossier dans SYSVOL, et il est appliqué automatiquement par chaque machine à laquelle il est lié. Cela fait d'une GPO un mécanisme de livraison de code et de configuration à travers de nombreux hôtes à la fois : un accès en écriture à une GPO, ou la capacité d'en lier une à une unité organisationnelle, est une exécution de code à distance sur tout ce qui est dans la portée.
Pourquoi les GPO sont une cible puissante#
- Une seule GPO liée peut toucher chaque ordinateur d'une OU ou du domaine entier, donc une écriture élève largement en une seule étape.
- Les GPO peuvent déployer des tâches planifiées, des scripts de démarrage/d'ouverture de session, des services et des changements de registre, qui sont tous des primitives directes d'exécution ou de privilège.
- Le droit de lier une GPO à une OU (l'attribut
gPLink) est aussi puissant que d'en éditer une : liez une GPO contrôlée par l'attaquant à une OU cible et elle s'applique. - L'application est automatique selon le cycle de rafraîchissement de la stratégie, l'abus ne nécessite donc aucune interaction supplémentaire.
Comment c'est exploité#
- Éditer une GPO accessible en écriture pour ajouter une tâche planifiée immédiate ou un script qui s'exécute en tant que SYSTEM sur les machines dans la portée.
- Lier une GPO malveillante à une OU dont vous pouvez écrire le
gPLink, amenant les objets dans la portée sous son contrôle. - Viser la bonne portée : une GPO liée à l'OU Domain Controllers, ou à une OU tier-0, convertit le contrôle de la GPO en compromission du domaine.
Pages#
- Énumération des GPO et des OU : trouver les GPO accessibles en écriture, leurs liaisons et les OU que vous pouvez affecter.
- Éditer une GPO : tâches planifiées immédiates, scripts et admin local sur tout ce qui est dans la portée.
- Lier une GPO :
WriteGPLinksur une OU pour amener ses objets dans une stratégie. - Group Policy Preferences : récupérer les identifiants
cpasswordet d'autologon depuis SYSVOL.
Outils#
- pyGPOAbuse (Linux) / SharpGPOAbuse (Windows) : injecter des tâches immédiates, des scripts et des changements d'admin local dans une GPO accessible en écriture.
- NetExec (
nxc) :ldap --gpopour lister les GPO,-M gpp_password/-M gpp_autologinpour les identifiants SYSVOL. - PowerView (
New-GPOImmediateTask,Set-DomainObjectpourgPLink), Group3r / Grouper2 : éditions de GPO et audits de paramètres vulnérables. - bloodyAD : définir le
gPLinkd'une OU depuis Linux.
Références#
- The Hacker Recipes: Group policies
- Microsoft: Group Policy and SYSVOL