Passer au contenu
Français
  • Il n'y a aucune suggestion car le champ de recherche est vide.

Comment traiter la mauvaise configuration P-ProtectedUsers ?

1. Qu’est-ce que le groupe Protected Users ?

Le groupe “Protected Users” (introduit avec Windows Server 2012 R2) est un groupe de sécurité spécifique conçu pour renforcer la protection des comptes à privilèges, notamment les administrateurs de domaine, les comptes de service sensibles ou encore les comptes disposant d’un haut niveau d’accès.

Lorsqu’un utilisateur appartient à ce groupe, plusieurs protections avancées sont automatiquement activées :

  • Aucun mot de passe NTLM n’est mis en cache localement;

  • Aucune délégation Kerberos (même « constrained ») n’est autorisée;

  • Les tickets Kerberos expirent après 4 heures maximum;

  • Aucun mot de passe ni jeton n’est stocké dans la mémoire LSASS;

  • Protection renforcée est activée contre les attaques de type “pass-the-hash” et “pass-the-ticket”.

Le scan d'Active Directory vérifie si tous les utilisateurs privilégiés sont membres de ce groupe.

2. Comment corriger cette mauvaise configuration ?

Pour corriger cette mauvaise configuration, il est nécessaire d’ajouter l’ensemble des comptes utilisateurs et des comptes de service privilégiés au groupe Protected Users. Il n’est pas nécessaire d’y inclure les comptes de service de type GMSA.

Le groupe Protected Users est accessible via le chemin suivant :

CN=Protected Users,CN=Users,DC=yourdomain,DC=com

Les quatre groupes privilégiés vérifiés par PingCastle sont :

  1. Administrateurs du domaine

  2. Administrateurs de l’entreprise

  3. Administrateurs du schéma

  4. Administrateurs

3. Vérifier l’existence de cette configuration

Afin de vérifier la bonne application du groupe, exécutez le script suivant sur les groupes privilégiés :

# 1. Définir les groupes
$PrivilegedGroup = "Domain Admins"
$ProtectedGroup = "Protected Users"

# 2. Récupérer les membres du groupe privilégié
$PrivilegedMembers = Get-ADGroupMember -Identity $PrivilegedGroup | Select-Object Name

# 3. Identifier les membres qui ne sont PAS dans Protected Users
Write-Host "Vérification des membres de '$PrivilegedGroup' qui ne sont PAS dans '$ProtectedGroup' :"

foreach ($Member in $PrivilegedMembers) {
    # Vérifier si le membre appartient à Protected Users
    $isProtected = Get-ADUser -Identity $Member.Name -Properties MemberOf |
                   Select-Object -ExpandProperty MemberOf |
                   Where-Object { $_ -like "*$ProtectedGroup*" }

    if (-not $isProtected) {
        Write-Warning "$($Member.Name) est dans '$PrivilegedGroup' mais pas dans '$ProtectedGroup'."
    }
}

Si vous rencontrez des difficultés, veuillez nous envoyer la capture d'écran de la commande exécutée à protect@stoik.io