PING CASTLE - Privileged Accounts
Appropriation de comptes
P-Delegated
P-Kerberoasting
Au moins un compte à privilège porte des valeurs dans l’attribut servicePrincipalName
. Cette configuration peut alors être utilisée par un attaquant pour usurper l’identité du compte avec l’attaque Kerberoasting.
Vous pouvez utiliser le script suivant pour trouver tous les comptes à haut privilèges avec un SPN :
Get-ADUser -Filter {adminCount -eq 1} -Properties servicePrincipalName |
Where-Object {$_.ServicePrincipalName}
Le compte
krbtgt
portent naturellement le SPNkadmin/changepw
: pas d’inquiétude à avoir là-dessus.
La plupart du temps, il s’agit de SPN qui pointent vers des instances SQL, comme par exemple :
- MSSQLSvc/SRV001.contoso.com:1433
- MSSQLSvc/SRV001.contoso.com
- MSSQLSvc/SRV002.contoso.com:1433
- MSSQLSvc/SRV002.contoso.com
Dans ce cas, la première chose est de vérifier que les serveurs/services indiqués dans le SPN existent toujours. Si ceux-ci n’existent plus, vous pouvez supprimer les valeurs correspondantes. Si les serveurs/services sont toujours utilisés, il vous reste deux choix :
- Migrer tous les services associés au(x) compte(s) vers un autre compte de service avec moins de privilèges
- Diminuer les privilèges du compte existant
Risque
MoyenProbabilité | 3/5 |
Impact | 3/5 |
Commentaire
Les SPN peuvent rester une épine dans le pied de la sécurité de votre domaine pendant longtemps. La réduction des privilèges du compte est souvent la meilleure méthode pour diminuer les risques.
Consulter la matrice de risque.P-AdminPwdTooOld
Au moins un compte à privilège possède un mot de passe vieux de trois ans ou plus. Voici un script pour les identifier rapidement :
Get-ADUser -Filter {(Enabled -eq $true) -and (adminCount -eq 1)} -Properties PasswordLastSet |
Where-Object {$_.PasswordLastSet -lt (Get-Date).AddYears(-3)}
Ici, au moins deux méthodes pour tricher :
- Abuser de la réinitialisation du mot de passe par un administrateur
- Mettre à jour la date de changement de mot de passe
Tricher sur cette métrique fera plaisir à la fois à Ping Castle et à l’attaquant qui utilisera ce compte pour faire tomber votre domaine.
La méthode propre est évidemment de changer le mot de passe et/ou diminuer les permissions des comptes concernés.
Risque
MoyenProbabilité | 3/5 |
Impact | 3/5 |
Commentaire
Faire un premier changement de mot de passe sur un compte de service après plusieurs années implique de très bien connaitre son environnement sous peine de casser quelque chose.
Consulter la matrice de risque.P-ProtectedUsers
P-LogonDenied
C’est la première pierre du tiering model Active Directory. Sur cette métrique, c’est le groupe “Admins du domaine” qui est ciblé et qui devrait être interdit de connexion sur toutes les ressources du Tier 2 (ordinateurs personnels principalement).
Pour résoudre ce point, vous devez d’abord créer de nouveaux comptes à privilège qui ne sont pas administrateurs du domaine pour accéder aux ordinateurs personnels en tant qu’administrateur local.
Ensuite, vous pouvez créer une nouvelle GPO qui s’appliquera au moins sur les ordinateurs personnels de votre domaine, avec la configuration suivante : Configuration ordinateur > Stratégies > Paramètres Windows > Paramètres de sécurité > Stratégies locales > Attribution des droits utilisateurs
Stratégie | Paramètres de stratégie |
---|---|
Session locale | CONTOSO\Admins du domaine |
Session en tant que service | CONTOSO\Admins du domaine |
Session en tant que tâche | CONTOSO\Admins du domaine |
Session par les services Bureau à distance | CONTOSO\Admins du domaine |
À voir si vous préférez faire une exception sur votre compte brise-glace pour qu’il puisse se connecter n’importe où.
Comme toutes les vérifications GPO de Ping Castle, à partir du moment où la GPO existe dans le domaine : le risque est considéré comme résolu. En réel, le périmètre d’application de la GPO a évidemment une importance majeure et celle-ci devrait être appliquée à toutes les ressources du Tier 2.
Risque
FaibleProbabilité | 3/5 |
Impact | 1/5 |
Commentaire
Le changement de compte administrateur est la partie la plus impactante car cela implique une modification des habitudes d'administration et des processus.
Consulter la matrice de risque.P-DisplaySpecifier
Vérification des ACL
P-DCOwner
P-DangerousExtendedRight
P-DsHeuristicsDoListObject
P-DNSAdmin
P-DNSDelegation
P-DelegationLoginScript
P-DelegationKeyAdmin
P-ExchangePrivEsc
P-ExchangeAdminSDHolder
P-DelegationFileDeployed
P-DelegationGPOData
P-DsHeuristicsAdminSDExMask
P-LoginDCEveryone
P-RecoveryModeUnprotected
Contrôle des comptes administrateurs
P-Inactive
P-AdminLogin
Cette vulnérabilité indique que le compte Administrateur par défaut (SID-500) a été utilisé récemment. Pour rappel : le compte Administrateur par défaut ne doit être utilisé qu’en cas de dernier recours, et vous devez utiliser des comptes nominatifs pour les actions quotidiennes sur le Tier 0.
Si l’usage de ce compte sort de ce contexte d’urgence absolue, vous devez :
- trouver la source de l’utilisation du compte avec l’évenement
4624
- arrêter l’utilisation de ce compte en fournissant une alternative (en suivant le principe du moindre privilège)
- réinitialiser le mot de passe du compte Administrateur
Risque
FaibleProbabilité | 2/5 |
Impact | 2/5 |
Commentaire
Le risque dépend fortement de quelle est l'utilisation qui a été faite du compte Administrateur.
Consulter la matrice de risque.
Commentaires