Exegol
Introduction à Exegol et ses environnements de pentesting avancés

Notions théoriques
Qu’est-ce que Exegol ?
Exegol est un environnement de pentesting et de post-exploitation très populaire, développé par la communauté francophone de HackademINT.
Contrairement à une machine virtuelle classique, Exegol fonctionne grâce à la conteneurisation (Docker/Podman).
La conteneurisation permet d'avoir des environnements légers, rapides à démarrer, et facilement réinitialisables. Chaque conteneur est isolé, ce qui évite les conflits entre outils et les risques de polluer votre système hôte.
Exegol est particulièrement réputé pour ses environnements spécialisés dans les tests d’intrusion sur des environnements Active Directory (Windows).
Pourquoi utiliser Exegol ?
- Il est léger et rapide à déployer (pas besoin d'une machine virtuelle lourde).
- Il propose des images spécialisées (Web, AD, Cryptographie, etc.) avec tous les outils préinstallés.
- Il permet d'avoir plusieurs environnements isolés sans polluer votre système hôte.
- Il est idéal pour la post-exploitation et l'escalade de privilèges.
Les outils emblématiques intégrés à Exegol
| Outil | Utilisation |
|---|---|
| NetExec (ex-CrackMapExec) | Exécuter des commandes à distance sur un domaine Active Directory |
| Impacket | Suite d'outils Python pour interagir avec les protocoles réseau |
| BloodHound | Cartographier les relations et les failles dans un Active Directory |
| Responder | Intercepter les authentifications réseau (Poisoning) |
| Ligolo-ng | Créer des tunnels réseau pour contourner les pare-feu |
| Evil-WinRM | Se connecter à distance sur des machines Windows via WinRM |
| John the Ripper / Hashcat | Casser des mots de passe et des hash |
Fonctionnement de Exegol
- Exegol s'installe via un simple script sur votre machine hôte (Linux, macOS, Windows via WSL).
- Vous créez et démarrez des "conteneurs" avec des commandes simples (
exegol start). - Vous entrez dans l'environnement comme si c'était un terminal Kali, mais tout est isolé dans un conteneur.
- Vos outils et fichiers de travail sont conservés même si vous arrêtez le conteneur.
Est-ce légal ?
Tout comme Kali Linux, l’utilisation de Exegol est 100% légale tant que vous l’utilisez sur des systèmes que vous possédez ou pour lesquels vous avez reçu une autorisation écrite. Les outils de post-exploitation comme Impacket ou NetExec utilisés sur des réseaux sans autorisation constituent des infractions pénales.
Exemple pratique
Démarrer un environnement et enumérer un réseau avec NetExec**
Nous allons voir comment lancer Exegol, entrer dans un conteneur, et utiliser NetExec pour découvrir des machines sur un réseau local (similaire à ce que ferait Nmap, mais avec un focus sur le partage de fichiers Windows).
Étape 1 : Mettre à jour et démarrer un conteneur Exegol
Sur votre machine hôte (terminal Linux/WSL), tapez les commandes suivantes :
exegol update
exegol start -e ad
Explication :
update: Met à jour les images de base Exegol.start -e ad: Démarre un conteneur avec l'image spécialisée "Active Directory" (qui contient NetExec).
Étape 2 : Entrer dans le conteneur
Une fois le conteneur créé, connectez-vous-y :
exegol exec ad
Vous êtes maintenant à l'intérieur de l'environnement Exegol (votre invite de commande change de style).
Étape 3 : Scanner un réseau avec NetExec
Pour découvrir les machines Windows actives sur un réseau local via le protocole SMB :
netexec smb 192.168.1.0/24
Explication :
smb: Cible le protocole de partage de fichiers Windows.192.168.1.0/24: Plage d’adresses IP du réseau local.
Étape 4 : Lister les partages d'une machine
Si une machine (comme un contrôleur de domaine) a l’adresse IP 192.168.1.10, tapez :
netexec smb 192.168.1.10 -shares
Explication :
-shares: Liste tous les dossiers partagés accessibles publiquement sur la machine cible.
Résultat attendu
NetExec affiche l'adresse IP, le nom de la machine, le système d'exploitation, et la liste des dossiers partagés (ex: C$, ADMIN$, Users).
Test de mémorisation/compréhension
TP pour réfléchir et résoudre des problèmes
Énumération et reconnaissance d'un environnement Active Directory avec Exegol
Étape 1 : Préparer l’environnement
Avant de nous attaquer à un domaine Windows, nous devons préparer notre arsenal de conteneur.
Lancer l'environnement Active Directory
Sur votre machine hôte, ouvrez un terminal et tapez :
exegol start -e ad
- Notez le nom de votre conteneur (par défaut, il porte le nom de l'image
ad, mais vous pouvez lui donner un nom avec-n mon_nom).
Entrer dans le conteneur
Tapez la commande suivante pour obtenir un shell interactif :
exegol exec ad
- Vous devriez voir le logo d'Exegol et votre prompt changer. Vous êtes maintenant dans un environnement dédié.