Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
CVE-2026-5029-Exploit — Exploit de preuve de concept pour CVE-2026-5029, fournissant une exécution de code à distance non authentifiée via l'outil MCP run-code sur des points de terminaison HTTP exposés. Comprend un shell interactif, l'énumération des langages et le sondage de cibles. | Kitploit
Outils/GitHubGitHub/0x00phantom-hat/cve-2026-5029-exploit
Scanners de VulnérabilitésAnalyse de CodeExploitationSécurité WebTests d'IntrusionApprentissage et Éducation
GitHub0x00phantom-hat/cve-2026-5029-exploit

CVE-2026-5029-Exploit

Exploit de preuve de concept pour CVE-2026-5029, fournissant une exécution de code à distance non authentifiée via l'outil MCP run-code sur des points de terminaison HTTP exposés. Comprend un shell interactif, l'énumération des langages et le sondage de cibles.

Voir le dépôt
19il y a 2 moisPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

🔥 CVE-2026-5029 — RCE sur Code Runner MCP Server

Exécution de code à distance non authentifiée via l'outil MCP run-code

CVE CVSS Python Status License

Preuve de concept de l'exploit pour CVE-2026-5029 — une vulnérabilité critique d'exécution de code à distance non authentifiée dans Code Runner MCP Server, déclenchée via l'outil MCP run-code lorsque le serveur est lancé avec --transport http.


📋 Présentation de la vulnérabilité

PropriétéDétail
Identifiant CVECVE-2026-5029
Score CVSS8,7 / 10 — Élevé
CWECWE-306 — Absence d'authentification pour une fonction critique
Produit concernéCode Runner MCP Server
Versions concernées(Non corrigé) Toutes les versions exposant l'outil run-code via --transport http
AuthentificationAucune requise (non authentifiée)
État du correctifNon corrigé
Découvert parPhantom Hat

🧠 Description technique

Code Runner MCP Server expose un point de terminaison JSON-RPC /mcp sur le port 3088 lorsqu'il est lancé avec l'option --transport http. Ce point de terminaison est accessible sans aucune authentification — pas de clé API, pas de jeton de session, pas de vérification de l'origine.

Tout attaquant distant non authentifié capable d'atteindre le port peut invoquer directement l'outil MCP run-code, qui accepte du code source arbitraire et un identifiant de langage, l'écrit dans un fichier temporaire, puis l'exécute via child_process.exec() en utilisant l'interpréteur correspondant (bash, python, powershell, et plus de 30 autres).

Étant donné qu'aucune assainissement n'est appliqué au paramètre code à aucun moment, cela aboutit à une exécution de code à distance non authentifiée complète avec les privilèges du processus exécutant le serveur MCP.

Étude de cas

https://medium.com/@phantom_hat/cve-2026-5029-unpatched-case-study-unauthenticated-remote-code-execution-rce-66c7706f2320

Flux d'attaque

┌──────────┐   JSON-RPC tools/call    ┌───────────────────────┐   exec()   ┌──────────┐
│ Attacker │ ──── run-code tool ─────▶│  /mcp  (port 3088)    │ ─────────▶ │   RCE    │
│          │    (no auth needed)      │  Code Runner MCP      │            │  on Host │
└──────────┘                          └───────────────────────┘            └──────────┘
  1. Reconnaissance — Se connecter au point de terminaison /mcp exposé et énumérer les outils MCP disponibles
  2. Découverte du schéma — Récupérer le schéma d'entrée de l'outil run-code (code, languageId)
  3. Envoi de l'exploit — Envoyer une requête JSON-RPC tools/call forgée avec un code contrôlé par l'attaquant
  4. Exécution de commande — Le serveur écrit code dans un fichier temporaire et l'exécute via l'interpréteur sélectionné

🗂️ Structure du dépôt

.
├── exploit.py           # 🎯 Interactive RCE exploit shell (Rich-based terminal UI)
└── README.md            # 📖 You are here

exploit.py — Exploit interactif

Le script d'exploitation principal, conçu pour un usage professionnel lors d'audits de sécurité et d'études de cas. Il se connecte au serveur MCP cible et ouvre un shell interactif dans lequel chaque commande est exécutée en direct via l'outil vulnérable run-code.

Fonctionnalités incluses :

  • Sortie terminal propre et structurée grâce à Rich
  • Shell d'exploitation interactif — saisissez des commandes, obtenez la sortie, allez et venez, sans relancer le script
  • Énumération des langages — liste tous les langages que le serveur MCP annonce prendre en charge
  • Détection des langages installés — vérifie quels interpréteurs existent réellement sur la machine cible
  • Langage d'exécution sélectionnable via -l (par défaut shellscript)
  • Mode verbeux pour une sortie opérationnelle détaillée

⚙️ Installation

Prérequis

  • Python 3.8+
  • Gestionnaire de paquets pip

Mise en place

# Clone the repository
git clone https://github.com/0x00phantom-hat/CVE-2026-5029-Exploit.git
cd CVE-2026-5029-RCE-Exploit

# Install dependencies
pip install fastmcp rich

🚀 Utilisation

# Drop into an interactive RCE shell (default: shellscript)
python3 exploit.py -u http://TARGET:3088/mcp

# Use a specific language interpreter
python3 exploit.py -u http://TARGET:3088/mcp -l python

# List all languages the MCP server advertises support for
python3 exploit.py -u http://TARGET:3088/mcp --available

# Probe which language runtimes are actually installed on the target
python3 exploit.py -u http://TARGET:3088/mcp --installed -v

# Show the help menu
python3 exploit.py -h

Une fois connecté, l'exploit ouvre une invite interactive :

PhantomHat-MCP@Exploit-CVE-2026-5029 $ id

Tapez exit pour fermer la session.

Options de la ligne de commande

OptionDescriptionDéfaut
-u, --url(Requis) URL du serveur MCP—
-l, --languageLangage à utiliser pour l'exécution du codeshellscript
-a, --availableListe tous les langages pris en chargeoption
-i, --installedDétecte les interpréteurs installés sur la cibleoption
-v, --verboseMode de sortie verbeuxoption
-h, --helpAffiche le menu d'aide—

📸 Phases de l'exploit

PhaseNomDescription
1🔍 ÉnumérationSe connecter à /mcp et énumérer les outils MCP disponibles
2🧪 Découverte du schémaConfirmer le schéma d'entrée de run-code (code, languageId)
3💣 Envoi de l'exploitEnvoyer une requête tools/call forgée avec un code contrôlé par l'attaquant
4🚀 Exécution interactiveObtenir un shell en direct — chaque commande s'exécute sur la machine cible

🔗 Références

Télécharger l’outil