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 — Strumento di rilevamento della vulnerabilità di perdita di memoria di MongoDB (CVE-2025-14847) | Kitploit
Strumenti/GitHubGitHub/onewinner/cve-2025-14847
Scanner di VulnerabilitàMemory ForensicsExploitRaccolta InformazioniPenetration TestingSicurezza dei Database
GitHubonewinner/cve-2025-14847

CVE-2025-14847

Strumento di rilevamento della vulnerabilità di perdita di memoria di MongoDB (CVE-2025-14847)

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

Strumento di rilevamento della vulnerabilità MongoDB CVE-2025-14847

Strumento di rilevamento della vulnerabilità di perdita di memoria di MongoDB (CVE-2025-14847)


⚠️ Nota importante: questo strumento è destinato esclusivamente a test di sicurezza autorizzati e valutazione delle vulnerabilità. L'uso non autorizzato può violare la legge.


📋 Indice

  • Descrizione della vulnerabilità
  • Caratteristiche
  • Installazione
  • Utilizzo
  • Configurazione dell'ambiente di test
  • Esempi di output
  • Principio di rilevamento
  • Raccomandazioni di correzione
  • Disclaimer

🔍 Descrizione della vulnerabilità

CVE-2025-14847 è una grave vulnerabilità di perdita di memoria nella gestione del protocollo di compressione Zlib di MongoDB. Un attaccante può inviare pacchetti compressi appositamente costruiti, facendo sì che MongoDB restituisca dati di memoria heap non inizializzati, che possono contenere informazioni sensibili.

Versioni interessate

Impatto della vulnerabilità

  • 🔴 Gravità: CVSS 8.7 (alta)
  • 💾 Perdita di memoria heap con dati sensibili
  • 🔑 Può contenere password, token di sessione, chiavi crittografiche, ecc.
  • 🚫 Sfruttabile senza autenticazione
  • 🌐 Sfruttabile da remoto

✨ Caratteristiche

  • ✅ Rilevamento intelligente - identifica automaticamente la versione di MongoDB e determina se è vulnerabile
  • ✅ Doppia verifica - rilevamento versione → verifica supporto Zlib → estrazione perdita di memoria
  • ✅ Scansione singolo target - rileva rapidamente una singola istanza MongoDB
  • ✅ Scansione batch - legge l'elenco dei target da un file per il rilevamento di massa
  • ✅ Scansione concorrente - supporta l'esecuzione concorrente multi-thread per aumentare l'efficienza
  • ✅ Output in tempo reale - visualizza in tempo reale i dati di memoria divulgati
  • ✅ Esportazione dei risultati - salva automaticamente su file i target vulnerabili
  • ✅ Output conciso - formato di output uniforme e chiaro

🚀 Installazione

Metodo 1: Compilazione dal sorgente

root@kitploit:~
# Clona il repository
git clone https://github.com/onewinner/CVE-2025-14847.git
cd CVE-2025-14847

# Installa le dipendenze
go mod download

# Compila
go build -o mongodb-scanner main.go

# Esegui
./mongodb-scanner -t 127.0.0.1:27017

Metodo 2: Esecuzione diretta

root@kitploit:~
go run main.go -t 127.0.0.1:27017

Metodo 3: Scarica la versione precompilata

Visita la pagina Releases per scaricare la versione precompilata adatta al tuo sistema.

📖 Utilizzo

Utilizzo di base

root@kitploit:~
# Scansione di un singolo target
./mongodb-scanner -t 127.0.0.1:27017

# Scansione batch da file
./mongodb-scanner -f targets.txt

# Scansione batch (20 thread)
./mongodb-scanner -f targets.txt -c 20

# Scansione e salvataggio dei target vulnerabili
./mongodb-scanner -f targets.txt -o vulnerable.txt

# Intervallo di offset personalizzato (scansione più rapida o più profonda)
./mongodb-scanner -t 127.0.0.1:27017 --min-offset 20 --max-offset 1000

Parametri della riga di comando

Formato del file dei target

Crea un file targets.txt:

root@kitploit:~
# Elenco dei target MongoDB
127.0.0.1:27017
192.168.1.100:27017
mongodb.example.com:27017

# Se non si specifica la porta, viene utilizzata la 27017 predefinita
192.168.1.101

🐳 Configurazione dell'ambiente di test

Per testare questo strumento in sicurezza, si consiglia di utilizzare Docker per configurare un ambiente di test locale.

Avvio rapido di MongoDB vulnerabile

root@kitploit:~
# Avvia MongoDB 6.0.14 (versione vulnerabile) con compressione Zlib abilitata
docker run -d \
  --name mongodb-vulnerable \
  -p 27017:27017 \
  mongo:6.0.14 \
  --networkMessageCompressors snappy,zlib

# Controlla lo stato del container
docker ps

# Test della vulnerabilità
./mongodb-scanner -t 127.0.0.1:27017

Utilizzo di Docker Compose

Crea un file docker-compose.yml:

root@kitploit:~
version: '3.8'

services:
  # Versione vulnerabile (con Zlib abilitato)
  mongodb-vulnerable:
    image: mongo:6.0.14
    container_name: mongodb-vulnerable
    ports:
      - "27017:27017"
    command: mongod --networkMessageCompressors snappy,zlib

  # Versione corretta (per test comparativi)
  mongodb-patched:
    image: mongo:6.0.27
    container_name: mongodb-patched
    ports:
      - "27018:27017"
    command: mongod --networkMessageCompressors snappy,zlib

volumes:
  mongodb-data:
  mongodb-patched-data:

Avvia l'ambiente di test:

root@kitploit:~
# Avvia tutti i container
docker-compose up -d

# Test della versione vulnerabile
./mongodb-scanner -t 127.0.0.1:27017

# Test della versione corretta
./mongodb-scanner -t 127.0.0.1:27018

# Arresta e pulisci
docker-compose down -v

Pulizia dell'ambiente di test

root@kitploit:~
# Arresta ed elimina i container
docker stop mongodb-vulnerable && docker rm mongodb-vulnerable

# Pulisci i volumi dati
docker volume prune -f

📊 Esempi di output

Spiegazione del formato di output

Lo strumento utilizza prefissi uniformi per contrassegnare le informazioni di output:

  • [*] - Output informativo (target, versione, configurazione, ecc.)
  • [+] - Successo / vulnerabile / dati estratti
  • [-] - Errore / sicuro / nessuna vulnerabilità
  • [!] - Avviso / nota importante

Scansione singolo target - Vulnerabile

root@kitploit:~
╔══════════════════════════════════════════════════════════════╗
║  MongoDB CVE-2025-14847 漏洞检测工具                         ║
╚══════════════════════════════════════════════════════════════╝
⚠️  仅用于授权安全测试 | 未经授权测试可能违法

[*] 目标: 1 | 线程: 10 | 超时: 2s | 偏移: 20-1000
[*] 开始扫描...

[*] 目标: 127.0.0.1:27017
[*] 版本: 6.0.14
[+] 漏洞版本: 是
[+] Zlib压缩: 已开启
[!] 漏洞可利用,开始提取内存...
[+] 偏移=229 长度=250: :00\"},\"s\":\"I\",  \"c\":\"NETWORK\",  \"id\":22944,   \"ctx\":\"conn102932\",

[+] 127.0.0.1:27017 - 漏洞可利用 (v6.0.14) - 3468ms
[+] 成功提取 1 项内存数据:
    [1] :00\"},\"s\":\"I\",  \"c\":\"NETWORK\",  \"id\":22944,   \"ctx\":\"conn102932\",\"msg\":\"Connection ended\",\"attr\":{\"remote\":\"172.17.0.1:44936\"...

======================================================================
[*] 扫描完成 | 总数: 1 | 可利用: 1 | 安全: 0 | 耗时: 3.4s
======================================================================

Scansione singolo target - Versione sicura

root@kitploit:~
[*] 目标: 127.0.0.1:27018
[*] 版本: 6.0.27
[-] 漏洞版本: 否

[-] 127.0.0.1:27018 - 版本安全 (v6.0.27) - 156ms

======================================================================
[*] 扫描完成 | 总数: 1 | 可利用: 0 | 安全: 1 | 耗时: 0.2s
======================================================================

Scansione singolo target - Zlib non abilitato

root@kitploit:~
[*] 目标: 127.0.0.1:27017
[*] 版本: 6.0.14
[+] 漏洞版本: 是
[-] Zlib压缩: 未开启

[-] 127.0.0.1:27017 - 未开启Zlib (v6.0.14) - 234ms

======================================================================
[*] 扫描完成 | 总数: 1 | 可利用: 0 | 安全: 1 | 耗时: 0.3s
======================================================================

Scansione batch

root@kitploit:~
[*] 目标: 5 | 线程: 10 | 超时: 2s | 偏移: 20-8192
[*] 开始扫描...

[+] 192.168.1.10:27017 - 漏洞可利用 (v6.0.14) - 3521ms
[+] 成功提取 2 项内存数据:
    [1] Connection ended...
    [2] network statistics...

[-] 192.168.1.11:27017 - 版本安全 (v6.0.27) - 145ms
[-] 192.168.1.12:27017 - 未开启Zlib (v6.0.14) - 198ms
[+] 192.168.1.13:27017 - 漏洞可利用 (v7.0.15) - 2987ms
[!] 192.168.1.14:27017 - 漏洞可利用但未提取到数据 (v6.0.20) - 4123ms

======================================================================
[*] 扫描完成 | 总数: 5 | 可利用: 3 | 安全: 2 | 耗时: 5.2s
======================================================================

[+] 可利用的目标已保存到: vulnerable.txt

🔬 Principio di rilevamento

Questo strumento adotta un meccanismo di rilevamento in tre fasi:

1️⃣ Rilevamento della versione

  • Connettersi all'istanza MongoDB
  • Ottenere le informazioni sulla versione (comando buildInfo)
  • Determinare se la versione rientra nell'intervallo interessato dalla vulnerabilità

2️⃣ Rilevamento del supporto alla compressione Zlib

  • Inviare un pacchetto di test con compressione Zlib
  • Verificare se il server restituisce una risposta compressa
  • Confermare se la compressione Zlib è abilitata

3️⃣ Estrazione della perdita di memoria

  • Inviare pacchetti compressi appositamente costruiti
    • Dichiarare una dimensione post-decompressione molto maggiore di quella effettiva
    • Indurre il server a leggere memoria heap non inizializzata
  • Scansionare più offset per estrarre più dati
  • Decomprimere la risposta del server ed estrarre i nomi dei campi divulgati
  • Visualizzare in tempo reale i dati di memoria rilevati

Logica di valutazione

CondizioneRisultato
Versione vulnerabile + Zlib attivo + dati estratti✅ Vulnerabilità sfruttabile - mostra i dati divulgati
Versione vulnerabile + Zlib attivo + nessun dato estratto⚠️ Vulnerabilità sfruttabile ma nessun dato estratto
Versione vulnerabile + Zlib non attivo❌ Zlib non attivo - non sfruttabile

🛠️ Raccomandazioni di correzione

Soluzione di correzione urgente

Aggiorna immediatamente a una delle seguenti versioni corrette:

  • MongoDB Server 8.2.3
  • MongoDB Server 8.0.17
  • MongoDB Server 7.0.28
  • MongoDB Server 6.0.27
  • MongoDB Server 5.0.32
  • MongoDB Server 4.4.30

Misure di mitigazione temporanee

Se non è possibile aggiornare nel breve termine, si possono adottare le seguenti misure temporanee:

1. Disabilitare la compressione Zlib

Configurare in mongod.conf o mongos.conf:

root@kitploit:~
net:
  compression:
    compressors: []

Oppure escludere esplicitamente zlib nei parametri di avvio:

root@kitploit:~
mongod --networkMessageCompressors snappy,zstd

2. Utilizzare altri algoritmi di compressione

Si consiglia di utilizzare snappy o zstd al posto di zlib:

root@kitploit:~
net:
  compression:
    compressors: snappy,zstd

3. Controllo dell'accesso di rete

  • Limitare la porta MongoDB ai soli IP attendibili
  • Utilizzare regole del firewall o la configurazione bindIp
  • Abilitare la trasmissione crittografata TLS/SSL

4. Abilitare il controllo degli accessi

  • Abilitare il meccanismo di autenticazione (parametro --auth)
  • Utilizzare criteri per password complesse
  • Implementare il principio del privilegio minimo

5. Monitoraggio e audit

  • Monitorare connessioni anomale e modelli di accesso alla memoria
  • Abilitare la registrazione dei log di audit
  • Controllare regolarmente i log di sicurezza

⚠️ Nota importante: le misure di mitigazione temporanee possono solo ridurre il rischio, non sono una soluzione definitiva. Si raccomanda vivamente di aggiornare a una versione corretta il prima possibile.

⚠️ Disclaimer

Nota importante:

  • ✅ Questo strumento è destinato esclusivamente a test di sicurezza autorizzati e valutazione delle vulnerabilità
  • ✅ Prima di utilizzare questo strumento, assicurati di avere l'autorizzazione a testare il sistema di destinazione
  • ❌ Le scansioni non autorizzate possono violare leggi e regolamenti
  • ❌ L'autore non è responsabile per qualsiasi uso improprio

Gli utenti che utilizzano questo strumento accettano di:

  1. Utilizzarlo solo su sistemi con autorizzazione esplicita
  2. Rispettare le leggi e i regolamenti della propria giurisdizione
  3. Essere responsabili di qualsiasi conseguenza derivante dall'utilizzo di questo strumento

📄 Licenza

Questo progetto è distribuito con licenza open source MIT License.

🤝 Contributi

Issue e Pull Request sono benvenuti!

Guida ai contributi

  1. Fai il fork di questo repository
  2. Crea il tuo branch per la funzionalità (git checkout -b feature/AmazingFeature)
  3. Committa le tue modifiche (git commit -m 'Add some AmazingFeature')
  4. Invia al branch (git push origin feature/AmazingFeature)
  5. Apri una Pull Request

📚 Riferimenti

  • Dettagli CVE-2025-14847
  • Avvisi di sicurezza MongoDB
  • Guida all'aggiornamento di MongoDB
  • Configurazione della compressione MongoDB

👨‍💻 Autore

onewinner - @onewinner

Indirizzo del progetto: https://github.com/onewinner/CVE-2025-14847

📝 Changelog

v1.0.0 (2025-12-26)

  • 🎉 Rilascio della versione iniziale
  • ✅ Supporto per scansione singolo target e batch
  • ✅ Supporto per scansione concorrente multi-thread
  • ✅ Rilevamento automatico della versione e valutazione del rischio
  • ✅ Rilevamento intelligente delle perdite di memoria
  • ✅ Raccomandazioni dettagliate di correzione

⭐ Se questo progetto ti è stato utile, lascia una Star!

Realizzato con ❤️ da ricercatori di sicurezza

Scarica lo strumento
Intervallo di versioniStato
8.2.0 - 8.2.2⚠️ Vulnerabile
8.0.0 - 8.0.16⚠️ Vulnerabile
7.0.0 - 7.0.27⚠️ Vulnerabile
6.0.0 - 6.0.26⚠️ Vulnerabile
5.0.0 - 5.0.31⚠️ Vulnerabile
4.4.0 - 4.4.29⚠️ Vulnerabile
4.2.x tutte le versioni⚠️ Vulnerabile
4.0.x tutte le versioni⚠️ Vulnerabile
3.6.x tutte le versioni⚠️ Vulnerabile
ParametroDescrizioneValore predefinito
-t <target>Singolo target (es: 127.0.0.1:27017)-
-f <file>File dei target (un target per riga)-
-c <num>Numero di thread concorrenti10
-timeout <time>Timeout di connessione2s
-o <file>File di output (salva i target vulnerabili)-
--min-offset <num>Offset minimo della lunghezza del documento20
--max-offset <num>Offset massimo della lunghezza del documento8192
Versione non vulnerabile✅ Versione sicura