Skip to main content
Glama

Exegol MCP Server

by janoujan
claude.md6.91 kB
# Exegol MCP Server - Guide d'Implémentation ## Vue d'ensemble Ce serveur MCP expose les capacités de pentesting d'Exegol à travers une interface MCP standardisée. Il est spécialement conçu pour les étudiants en cybersécurité participant à des compétitions CTF. ## Architecture Technique ### Container Docker - **Image de base** : `nwodtuhs/exegol:latest` - **Runtime** : Python 3.11 - **Protocole** : MCP via stdio - **Isolation** : Container Docker avec montage de volumes ### Sauvegarde des Résultats Tous les outils sauvegardent automatiquement leurs résultats dans un vault Obsidian avec : - **Format de nom** : `YYYYMMDD_HHMMSS_outil_cible.txt` - **Structure** : En-tête avec metadata + contenu du scan - **Organisation** : Horodatage automatique pour retrouver facilement les scans ### Gestion des Erreurs - Timeouts configurés par catégorie d'outil - Codes de retour vérifiés - Messages d'erreur formatés pour l'utilisateur - Logs détaillés vers stderr ## Catégories d'Outils ### 1. Reconnaissance (Timeouts : 300-600s) Scanner et énumérer les cibles avant exploitation. **Nmap** : Scanner réseau complet - Modes prédéfinis : quick, full, stealth, vuln - Support des ports personnalisés - Détection de services et versions **Gobuster** : Brute-force de répertoires - Wordlists intégrées (common, medium, big) - Support des extensions de fichiers - Mode silencieux pour output propre **FFUF** : Fuzzing web avancé - Modes : directory, vhost, parameter - Plus rapide que gobuster - Meilleur pour la découverte de paramètres **WhatWeb** : Fingerprinting web - Identification de CMS - Détection de technologies - Niveaux d'agression configurable ### 2. Exploitation Web (Timeouts : 900s) Identifier et exploiter les vulnérabilités web. **SQLMap** : Injection SQL automatique - Support POST et GET - Gestion des cookies - Techniques configurables **Nikto** : Scanner de vulnérabilités - Base de données de 6700+ vulnérabilités - Support SSL/TLS - Détection de configurations dangereuses **WPScan** : Audit WordPress - Énumération de plugins vulnérables - Détection de thèmes - Brute-force d'utilisateurs ### 3. Post-Exploitation (Timeouts : 300s) Maintenir l'accès et escalader les privilèges. **Reverse Shell Generator** : Payloads multiples - 7 types de shells supportés - Compatible tous OS - Commande listener incluse **LinPEAS** : Escalade de privilèges Linux - Scan automatique de vecteurs d'escalade - Détection de misconfigurations - Recherche de credentials ### 4. Cryptographie (Timeouts : 3600s) Identifier et casser les protections cryptographiques. **Hash Identifier** : Reconnaissance de hash - Identification automatique du type - Suggestions d'outils de cracking **John the Ripper** : Cracking CPU - Support de nombreux formats - Rainbow tables - Wordlist rockyou intégrée **Hashcat** : Cracking GPU - Plus rapide que John - Modes multiples (0-99999+) - Support des règles **Encodage/Décodage** : Transformations - Base64, Hex, URL, ROT13 - Détection automatique possible - Chaînage de transformations ### 5. OSINT (Timeouts : 600s) Collecte d'informations publiques sur les cibles. **WHOIS** : Informations de domaine - Propriétaire et contacts - Dates d'enregistrement - Serveurs DNS **DNS Enumeration** : Records DNS - Tous types de records (A, AAAA, MX, TXT, etc.) - Détection de zone transfers - Reverse DNS **Subdomain Enumeration** : Découverte de sous-domaines - 3 outils au choix (subfinder, assetfinder, amass) - Sources passives et actives - Combinaison pour meilleurs résultats **theHarvester** : Email harvesting - Recherche dans moteurs de recherche - Sources multiples (Google, Bing, LinkedIn) - Collecte d'IPs et sous-domaines ### 6. Stéganographie (Timeouts : 300s) Découvrir des données cachées dans les fichiers. **Steghide** : Extraction de données cachées - Support images JPEG, BMP, WAV, AU - Protection par mot de passe - Extraction automatique **ExifTool** : Analyse de métadonnées - Support 100+ formats de fichiers - Recherche de coordonnées GPS - Détection de logiciels utilisés **Binwalk** : Analyse de firmware - Détection de signatures - Extraction automatique - Analyse récursive ### 7. Brute Force (Timeouts : 3600s) Casser les authentifications par force brute. **Hydra** : Brute-force réseau - Support 50+ protocoles - Parallélisation - Rockyou intégré **Medusa** : Alternative à Hydra - Plus stable sur certains services - Modules additionnels - Meilleure gestion d'erreurs ## Conventions de Code ### Docstrings ```python @mcp.tool() async def tool_name(param: str = "") -> str: """Single-line description mentioning all key parameters and features.""" ``` ### Paramètres - Toujours des valeurs par défaut (`""` jamais `None`) - Types simples uniquement (str, pas Optional[str]) - Validation avec `.strip()` pour les chaînes ### Retours - Toujours retourner une chaîne formatée - Emojis pour clarté visuelle - Inclure le chemin du fichier sauvegardé ### Sauvegarde ```python filepath = save_result("tool_name", output, target) return f"✅ Success\n\n{output}\n\n📁 Saved to: {filepath}" ``` ## Variables d'Environnement ### Configuration - `OBSIDIAN_EXEGOL_PATH` : Chemin vers le dossier EXEGOL dans Obsidian - `EXEGOL_RESULTS_DIR` : Alternative au chemin Obsidian (fallback) ### Montage de Volumes Le container doit monter : 1. Le vault Obsidian (pour sauvegarde) 2. Les fichiers à analyser (stéganographie, hashes) 3. Les wordlists personnalisées (optionnel) ## Workflows CTF Typiques ### 1. Reconnaissance initiale ```` 1. nmap_scan (quick) → Identifier services 2. gobuster_dir → Trouver pages cachées 3. whatweb_scan → Identifier technologies 4. subdomain_enum → Élargir la surface d'attaque ```` ### 2. Exploitation web ```` 1. nikto_scan → Vulnérabilités connues 2. sqlmap_scan → Injections SQL 3. wpscan_scan (si WordPress détecté) ```` ### 3. Post-exploitation ```` 1. reverse_shell_generator → Obtenir shell 2. linpeas_analyze → Trouver escalade 3. hydra_bruteforce → Pivoter vers autres services ```` ### 4. Challenges crypto ```` 1. hash_identify → Type de hash 2. john_crack ou hashcat_crack → Casser 3. decode_encode → Déobfusquer ```` ### 5. Challenges stégano ```` 1. exiftool_analyze → Métadonnées 2. binwalk_analyze → Fichiers cachés 3. steghide_extract → Données embarquées ```` ## Bonnes Pratiques ### Organisation dans Obsidian Créez une structure : ```` EXEGOL/ ├── reconnaissance/ ├── exploitation/ ├── post-exploitation/ ├── crypto/ ├── osint/ └── notes/

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/janoujan/exegol-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server