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 — Laboratoire d'exploitation, docker et scanner de code pour la vulnérabilité mongobleed CVE-2025-14847 ainsi que les outils de synchronisation Phoenix Security | Kitploit
Outils/GitHubGitHub/security-phoenix-demo/mongobleed-exploit-cve-2025-14847
Scanners de VulnérabilitésAnalyse de CodeExploitationApprentissage et ÉducationSécurité des Bases de DonnéesLabs et Pratique
GitHubsecurity-phoenix-demo/mongobleed-exploit-cve-2025-14847

mongobleed-exploit-CVE-2025-14847

Laboratoire d'exploitation, docker et scanner de code pour la vulnérabilité mongobleed CVE-2025-14847 ainsi que les outils de synchronisation Phoenix Security

Voir le dépôt
1323il y a 8 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

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

Logo MongoBleed

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

📖 Documentation complète • 🔬 Analyse technique • ⚡ Commandes rapides


🎯 Résumé de CVE-2025-14847

MongoBleed est une vulnérabilité critique de divulgation mémoire dans la couche de transport réseau de MongoDB qui permet à des attaquants distants non authentifiés d'exfiltrer des données mémoire sensibles du tas, sans aucun identifiant ni interaction utilisateur.

Impact

CatégorieDescription
Type d'attaqueDivulgation mémoire distante et non authentifiée
Cause racineLa décompression Zlib retourne la taille du tampon alloué au lieu de la longueur réelle des données
Données exposéesMots de passe de bases de données, clés API, jetons de session, identifiants AWS, état interne du serveur
SévéritéCVSS 8.7 (Élevée) – accessible via le réseau, aucune authentification requise
ExploitationExploitation active observée dans la nature depuis le 28 décembre 2025

Versions vulnérables (en un coup d'œil)

BrancheVulnérableCorrigéeAction
8.2.x8.2.0 → 8.2.28.2.3Mettre à jour immédiatement
8.0.x8.0.0 → 8.0.168.0.17Mettre à jour immédiatement
7.0.x7.0.0 → 7.0.277.0.28Mettre à jour immédiatement
6.0.x6.0.0 → 6.0.266.0.27Mettre à jour immédiatement
5.0.x5.0.0 → 5.0.315.0.32Mettre à jour immédiatement
4.4.x4.4.0 → 4.4.294.4.30Mettre à jour immédiatement
≤4.2.xToutes les versionsAucune⚠️ Fin de vie – Migrer vers une version prise en charge

📖 Voir le tableau complet des versions affectées →

Échelle d'exposition

  • 87 000 – 194 000 instances MongoDB exposées publiquement
  • 42 % des environnements cloud hébergent des instances vulnérables (étude Wiz)
  • Aucune authentification requise – l'attaque se produit avant l'authentification
  • Exploitation silencieuse – pas de journaux, pas de plantages

TL;DR pour les équipes techniques

AspectDétails
Qu'est-ce qui est vulnérableLa couche de transport réseau du serveur MongoDB utilisant la compression zlib
SévéritéÉlevée (CVSS 8.7/7.5)
ImpactDivulgation à distance et 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 à jour vers les versions corrigées immédiatement ou désactiver la compression zlib

🔬 Anatomie de la vulnérabilité

Analyse technique

La vulnérabilité réside 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 fuiter des données mémoire sensibles 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

Déroulement de l'exploitation

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

Chronologie de la découverte

DateÉvénement
15 décembre 2025Vulnérabilité identifiée ; ticket interne SERVER-115508
19 décembre 2025Correctif publié, CVE-2025-14847 divulgué
24 décembre 2025Parc MongoDB Atlas corrigé
26 décembre 2025PoC public "mongobleed" publié
28 décembre 2025Exploitation observée dans la nature

🔬 Voir l'analyse technique → pour l'anatomie détaillée de la vulnérabilité, la construction de l'exploit et les méthodes de détection.

📁 Structure du projet

root@kitploit:~
mongobleed-exploit-CVE-2025-14847/
├── exploit/                    # 🔴 Laboratoire d'exploit
│   ├── docker-compose.yml      # Instances MongoDB vulnérable + corrigée
│   ├── mongobleed.py           # PoC d'exploit 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 Finding, Vulnerability
│   ├── integrations/           # Envoi vers Phoenix Security
│   └── README.md               # Documentation du scanner de code
│
└── original-exploit/           # 📚 Référence du PoC original

🚀 Démarrage rapide

1. Laboratoire d'exploit

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 fuiter de la mémoire)
python3 mongobleed.py --host localhost --port 27017

# Tester l'instance corrigée (NE DEVRAIT PAS fuiter 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 hôte unique
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 détecter les versions vulnérables de MongoDB
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'EXPLOIT ===
# 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
[*] Scan des offsets 20-8192...

[+] offset=  117 len=  39: ssions^\u0001�r��*YDr���
[+] offset=16582 len=1552: MemAvailable:    8554792 kB\nBuffers: ...
[+] offset=18731 len=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 de laboratoire

Sortie du scanner réseau

root@kitploit:~
[*] Scan 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ÉCURISÉ]

RÉSUMÉ :
----------------------------------------
Nombre total de cibles scannées : 254
Hôtes joignables :               12
Instances MongoDB :              8
VULNÉRABLES :                    3

Sortie du scanner de code

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

🚨 VERSIONS VULNÉRABLES DE MONGODB DÉTECTÉES

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

🛡️ Résumé des mesures correctives

PrioritéActionDétails
🔴 1Mettre à jour MongoDBMettre à jour vers les versions corrigées (8.2.3, 8.0.17, 7.0.28, 6.0.27, 5.0.32, 4.4.30)
🟠 2Désactiver zlibmongod --setParameter networkMessageCompressors=snappy,zstd
🟡 3Isolation réseauBlocage du port 27017 par pare-feu, utiliser VPN/réseau privé
🔵 4Rotation des identifiantsSi exposés, faire pivoter tous les mots de passe de base de données, clés API, jetons

📖 Voir le guide complet des mesures correctives →


🔗 Intégration Phoenix Security

Tous les scanners prennent en charge l'envoi des résultats 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 boîte à outils est fournie uniquement pour des tests de sécurité autorisés et des fins de recherche.

  • Testez uniquement les systèmes dont vous êtes propriétaire ou pour lesquels vous avez une autorisation écrite explicite
  • L'accès non autorisé à des systèmes informatiques est illégal
  • Les données divulguées peuvent contenir des informations sensibles – manipulez-les de manière responsable
  • Signalez les vulnérabilités via les canaux de divulgation appropriés

📚 Documentation

Documentation principale

DocumentDescription
📖 DOCUMENTATION.mdDocumentation complète du projet avec installation, utilisation et mesures correctives
🔬 TECHNICAL_ANALYSIS.mdAnatomie approfondie de la vulnérabilité, mécanisme d'exploitation et détection
⚡ QUICK_COMMANDS.mdCommandes prêtes à copier-coller pour tous les outils

Documentation des outils

OutilDocumentationDescription
🔴 Laboratoire d'exploitexploit/README.mdLaboratoire MongoDB vulnérable/corrigé basé sur Docker
🌐 Scanner réseauscanner/README.mdScanner de vulnérabilité IP/CIDR
📂 Scanner de codecode-scan/README.mdScanner de code source pour versions vulnérables

🔗 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 tests de sécurité autorisés uniquement. Utilisez de manière responsable.


Dernière mise à jour : Décembre 2025

Télécharger l’outil