Introduction#
Ce projet est une transformation d’un ancien lab académique en projet personnel orienté portfolio. L’objectif est de documenter une chaîne d’attaque interne complète dans un environnement Active Directory, depuis la découverte réseau jusqu’à la compromission du domaine.
Le lab simule une infrastructure d’entreprise avec plusieurs machines Linux et Windows, des services exposés, des partages réseau, un contrôleur de domaine et des erreurs de configuration volontairement présentes.
L’objectif n’est pas seulement d’obtenir un shell root ou SYSTEM. L’objectif est surtout de comprendre comment une compromission initiale peut évoluer vers une compromission complète du domaine, puis de proposer des mesures défensives concrètes.
Objectifs du projet#
Les objectifs principaux sont:
- cartographier un réseau interne
- identifier les services exposés et les mauvaises configurations
- exploiter une première machine Linux
- pivoter vers d’autres systèmes internes
- attaquer l’environnement Active Directory
- exploiter Kerberos via Kerberoasting
- réaliser une attaque DCSync dans un scénario contrôlé
- obtenir un shell privilégié
- documenter les impacts et les recommandations défensives
Architecture du lab#
Le domaine simulé est esdown.local.
Machines clés:
| Hôte | Rôle | Adresse |
|---|---|---|
| SRV-BUR | serveur Linux exposant plusieurs services | 10.10.10.20 |
| SRV-NAS | serveur de fichiers / stockage | 10.10.10.21 |
| WIN-APP | serveur applicatif Windows | 10.10.10.25 |
| DC | contrôleur de domaine Active Directory | 10.10.10.30 |
| Gateway | passerelle réseau | 10.10.10.254 |
Le réseau interne utilisé pour le lab est 10.10.10.0/24.
La vue suivante distingue les rôles techniques et le chemin de confiance que l’audit cherche à remettre en cause :
FTP, SMB, NFS, SSH"] NAS["SRV-NAS
stockage et secrets"] end subgraph AD["Zone Active Directory - esdown.local"] APP["WIN-APP
serveur applicatif"] DC["DC
Kerberos, LDAP, réplication"] end Audit -->|"Reconnaissance et accès initial"| BUR BUR -->|"Clé SSH ou secret réutilisé"| NAS NAS -.->|"Identifiants découverts"| APP APP -->|"Kerberos, LDAP, SMB"| DC NAS -.->|"Accès au réseau du domaine"| DC
Le schéma ne signifie pas que chaque flèche est automatiquement exploitable. Il représente les relations à valider et les endroits où une mauvaise configuration peut transformer un accès local limité en mouvement latéral.
Méthodologie#
La méthodologie suivie reprend une logique professionnelle de test d’intrusion interne:
- reconnaissance et découverte des hôtes
- énumération des services
- identification des vulnérabilités
- exploitation initiale
- post-exploitation
- mouvement latéral
- compromission Active Directory
- exfiltration contrôlée de preuves
- recommandations défensives
La chaîne d’attaque du lab peut être résumée comme une succession de changements de contexte de sécurité :
Phase 1 - Reconnaissance réseau#
La première étape consiste à identifier les hôtes actifs.
nmap -sn 10.10.10.0/24
Ensuite, un scan plus détaillé est réalisé sur les machines détectées:
nmap -sC -sV -p- 10.10.10.20
nmap -sC -sV -p- 10.10.10.21
nmap -sC -sV -p- 10.10.10.30
Les objectifs de cette étape sont:
- identifier les ports ouverts
- détecter les versions des services
- repérer les services anciens ou mal configurés
- comprendre les relations entre les systèmes
Phase 2 - Analyse des services exposés#
Plusieurs services intéressants sont identifiés:
- FTP
- SMB
- NFS
- HTTP
- SSH
- services Windows liés au domaine
Le serveur SRV-BUR expose une surface importante. C’est un bon candidat pour obtenir un premier accès.
Vulnérabilité critique - vsFTPd 2.3.4#
Le service FTP expose une version vulnérable connue: vsFTPd 2.3.4.
Cette version est célèbre pour sa backdoor introduite dans un paquet compromis. Dans un environnement réel, la présence d’un tel service est critique, car elle permet potentiellement une exécution de commande non authentifiée.
Exploitation conceptuelle:
nmap --script ftp-vsftpd-backdoor -p21 10.10.10.20
Impact:
- exécution de commande distante
- accès système initial
- point d’entrée pour la post-exploitation
Énumération SMB#
L’énumération SMB permet d’obtenir des informations sur les partages, la politique de mot de passe et les comptes visibles.
enum4linux -a 10.10.10.20
smbclient -L //10.10.10.20/ -N
Points recherchés:
- partages anonymes
- répertoires accessibles en écriture
- informations système
- comptes utilisateurs
- politique de mot de passe faible
Énumération NFS#
NFS est également analysé, car une mauvaise configuration peut permettre de monter un partage sensible depuis une machine attaquante.
showmount -e 10.10.10.20
mount -t nfs 10.10.10.20:/share /mnt/nfs
Risques principaux:
- exposition de fichiers sensibles
- permissions trop permissives
- possibilité d’écrire une clé SSH
- pivot vers un autre utilisateur ou serveur
Accès initial et post-exploitation#
Après exploitation du premier service vulnérable, l’objectif est de stabiliser l’accès, comprendre le système et rechercher des secrets.
Commandes utiles:
id
hostname
ip a
sudo -l
find / -perm -4000 -type f 2>/dev/null
find / -name "*.key" -o -name "id_rsa" 2>/dev/null
Cette phase permet notamment de découvrir une clé SSH utilisable pour pivoter vers un autre serveur interne.
Pivot vers SRV-NAS#
La découverte d’une clé SSH ou d’un secret réutilisé permet de tenter un mouvement latéral.
ssh -i id_rsa user@10.10.10.21
Une fois sur le NAS, l’analyse se concentre sur:
- les droits sudo
- les partages montés
- les scripts exécutés en privilèges élevés
- les permissions faibles
Élévation de privilèges Linux#
Plusieurs vecteurs sont évalués:
- mauvaise configuration sudo
- répertoires partagés modifiables
- fichiers sensibles lisibles
- tâches planifiées
- SUID binaries
Exemple de vérification:
sudo -l
find / -perm -4000 -type f 2>/dev/null
Un serveur NAS mal configuré devient souvent un pivot majeur dans un réseau interne, car il contient des fichiers utilisateurs, des sauvegardes ou des secrets applicatifs.
Passage à Active Directory#
Après obtention d’identifiants ou d’un accès au réseau Windows, l’attaque se déplace vers le domaine esdown.local.
Objectifs:
- identifier les utilisateurs du domaine
- trouver les comptes de service
- repérer les SPN
- tenter Kerberoasting
- valider les privilèges obtenus
Kerberoasting#
Kerberoasting cible les comptes de service Active Directory possédant un SPN.
Commande utilisée dans le lab:
impacket-GetUserSPNs esdown.local/USER:'PASSWORD' -dc-ip 10.10.10.30 -request
Le ticket récupéré est ensuite cracké hors ligne:
hashcat -m 13100 kerb_hash.txt /usr/share/wordlists/rockyou.txt
Dans le lab, un compte de service faible permet de récupérer un mot de passe exploitable.
Impact:
- compromission d’un compte de service
- accès à des applications internes
- escalade possible si le compte est trop privilégié
DCSync#
DCSync est une attaque critique contre Active Directory. Elle abuse des droits de réplication du domaine pour récupérer les secrets du contrôleur de domaine.
Exemple de commande:
impacket-secretsdump esdown.local/USER:'PASSWORD'@10.10.10.30
Les secrets récupérés peuvent inclure:
- hash NTLM
- clés Kerberos
- secrets du compte
krbtgt - hash administrateur
Le hash krbtgt est particulièrement sensible, car il peut permettre la création de Golden Tickets.
Pass-the-Hash et shell SYSTEM#
Une fois un hash administrateur récupéré, il est possible de tester une attaque Pass-the-Hash dans le lab.
impacket-psexec -hashes :<NTLM_HASH> esdown.local/Administrateur@10.10.10.30
Objectif:
- obtenir un shell avec privilèges élevés
- confirmer l’impact de la compromission du domaine
Chemin d’attaque alternatif - EternalBlue#
Un chemin alternatif étudié dans le projet concerne EternalBlue (MS17-010).
Ce scénario montre qu’une vulnérabilité historique non corrigée peut encore représenter un risque critique si des systèmes anciens restent connectés au réseau.
Points défensifs:
- patch management strict
- segmentation réseau
- blocage SMB entre zones non nécessaires
- détection des scans SMB
Recommandations défensives#
Patch management#
- corriger les services vulnérables
- supprimer les versions obsolètes
- maintenir un inventaire logiciel à jour
Durcissement des services#
- désactiver FTP si inutile
- remplacer FTP par SFTP/SSH durci
- limiter SMB aux hôtes nécessaires
- restreindre NFS par IP et permissions strictes
Active Directory#
- limiter les privilèges des comptes de service
- utiliser des mots de passe longs et aléatoires
- auditer les SPN
- surveiller les requêtes Kerberos anormales
- protéger le compte
krbtgt
Détection#
À surveiller:
- scans Nmap internes
- montage NFS inhabituel
- énumération SMB
- requêtes Kerberoasting
- DCSync non légitime
- Pass-the-Hash
Une détection exploitable doit relier l’action offensive à une source de preuve précise. Les événements ci-dessous sont des points de départ, pas des règles universelles :
| Phase | Technique ATT&CK indicative | Télémétrie utile | Signal à corréler |
|---|---|---|---|
| Découverte réseau | T1046 Network Service Discovery | pare-feu, IDS, NetFlow | balayage horizontal ou vertical depuis un poste non administrateur |
| Accès aux partages | T1021.002 SMB/Windows Admin Shares | journaux SMB, événements de connexion, EDR | accès à plusieurs hôtes ou partages sensibles dans un intervalle court |
| Kerberoasting | T1558.003 Kerberoasting | événement Kerberos 4769 sur le DC | volume inhabituel de TGS, comptes de service rares, chiffrement RC4 quand il n’est pas attendu |
| DCSync | T1003.006 DCSync | événement 4662, audit annuaire, EDR DC | droits de réplication exercés par un compte ou depuis un hôte qui n’est pas un DC |
| Pass-the-Hash | T1550.002 Pass the Hash | 4624, NTLM, création de service distante, EDR | authentification réseau privilégiée sans chaîne interactive ou administrative cohérente |
Le contexte est essentiel. Un événement 4769 ou 4624 isolé est normal dans un domaine. La valeur vient de la combinaison entre identité, hôte source, volume, type de chiffrement, horaire et séquence des actions.
Preuves et critères de réussite#
Pour rendre le lab réutilisable et auditable, chaque phase doit produire une preuve minimale sans exposer de secret réel :
| Étape | Preuve conservée | Critère de réussite |
|---|---|---|
| Reconnaissance | inventaire horodaté des hôtes et services | surface réseau reproduite sans hôte hors périmètre |
| Accès initial | commande, version vulnérable et identité du shell | accès obtenu uniquement sur la cible autorisée |
| Pivot | route empruntée et secret expurgé | accès au second segment démontré et révocable |
| Active Directory | SPN, ACL et chemin de privilèges anonymisés | relation causale entre compte faible et privilège obtenu |
| Compromission | preuve d’identité SYSTEM ou équivalent | impact démontré sans conserver de hash ni de ticket exploitable |
| Défense | événements générés et règle de détection associée | action visible dans les journaux attendus |
Références techniques#
- MITRE ATT&CK, Kerberoasting (
T1558.003) : https://attack.mitre.org/techniques/T1558/003/ - MITRE ATT&CK, DCSync (
T1003.006) : https://attack.mitre.org/techniques/T1003/006/ - MITRE ATT&CK, Pass the Hash (
T1550.002) : https://attack.mitre.org/techniques/T1550/002/ - Microsoft, événement Kerberos
4769: https://learn.microsoft.com/en-us/previous-versions/windows/it-pro/windows-10/security/threat-protection/auditing/event-4769 - Microsoft, événement d’accès aux objets
4662: https://learn.microsoft.com/en-us/previous-versions/windows/it-pro/windows-10/security/threat-protection/auditing/event-4662
Ce que ce projet m’a apporté#
Ce lab m’a permis de relier plusieurs compétences importantes:
- pentest Linux
- énumération réseau interne
- exploitation de services anciens
- pivot et post-exploitation
- attaques Active Directory
- raisonnement défensif sur les chemins d’attaque
Conclusion#
Ce projet montre comment une compromission initiale sur un serveur Linux peut progressivement mener à la compromission complète d’un domaine Active Directory.
La leçon principale est simple: dans un réseau interne, chaque mauvaise configuration peut devenir un maillon d’une chaîne d’attaque plus large. La défense doit donc combiner patch management, segmentation, durcissement, supervision et contrôle strict des privilèges.

