Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
CVE-2025-14847 — MongoDB 内存泄露漏洞 (CVE-2025-14847) 检测工具 | Kitploit
Tools/GitHubGitHub/onewinner/cve-2025-14847
Vulnerability ScannersMemory ForensicsExploitationInformation GatheringPenetration TestingDatabase Security
GitHubonewinner/cve-2025-14847

CVE-2025-14847

MongoDB 内存泄露漏洞 (CVE-2025-14847) 检测工具

Repository anzeigen
142vor 7 MonatenNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

MongoDB CVE-2025-14847 Schwachstellen-Erkennungstool

Tool zur Erkennung der MongoDB-Speicherleck-Schwachstelle (CVE-2025-14847)


⚠️ Wichtiger Hinweis: Dieses Tool ist ausschließlich für autorisierte Sicherheitstests und Schwachstellenbewertungen bestimmt. Eine unbefugte Nutzung kann gegen Gesetze verstoßen.


📋 Inhaltsverzeichnis

  • Schwachstellenbeschreibung
  • Funktionen
  • Installation
  • Verwendung
  • Testumgebung einrichten
  • Ausgabebeispiele
  • Erkennungsprinzip
  • Behebungsvorschläge
  • Haftungsausschluss

🔍 Schwachstellenbeschreibung

CVE-2025-14847 ist eine schwerwiegende Speicherleck-Schwachstelle in der Verarbeitung des Zlib-Komprimierungsprotokolls von MongoDB. Ein Angreifer kann durch das Senden manipulierter komprimierter Datenpakete dazu führen, dass MongoDB nicht initialisierte Heap-Speicherdaten zurückgibt, die möglicherweise vertrauliche Informationen enthalten.

Betroffene Versionen

Auswirkungen der Schwachstelle

  • 🔴 Schweregrad: CVSS 8.7 (Hoch)
  • 💾 Leck von Heap-Speicher mit sensiblen Daten
  • 🔑 Kann Passwörter, Sitzungstoken, Verschlüsselungsschlüssel usw. enthalten
  • 🚫 Keine Authentifizierung erforderlich
  • 🌐 Remote ausnutzbar

✨ Funktionen

  • ✅ Intelligente Erkennung – Automatische Identifizierung der MongoDB-Version und Beurteilung, ob sie betroffen ist
  • ✅ Doppelte Verifizierung – Versionsprüfung → Zlib-Unterstützungsprüfung → Speicherleck-Extraktion
  • ✅ Einzelscan – Schnelle Prüfung einer einzelnen MongoDB-Instanz
  • ✅ Batch-Scan – Einlesen einer Zielliste aus einer Datei für Batch-Prüfungen
  • ✅ Gleichzeitiger Scan – Unterstützung mehrerer Threads für verbesserte Scan-Effizienz
  • ✅ Echtzeit-Ausgabe – Anzeige der geleakten Speicherdaten in Echtzeit
  • ✅ Ergebnis-Export – Automatisches Speichern der anfälligen Ziele in einer Datei
  • ✅ Kompakte Ausgabe – Einheitliches Ausgabeformat, klar und verständlich

🚀 Installation

Methode 1: Aus dem Quellcode kompilieren

root@kitploit:~
# Repository klonen
git clone https://github.com/onewinner/CVE-2025-14847.git
cd CVE-2025-14847

# Abhängigkeiten installieren
go mod download

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

# Ausführen
./mongodb-scanner -t 127.0.0.1:27017

Methode 2: Direkt ausführen

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

Methode 3: Vorkompilierte Version herunterladen

Rufen Sie die Seite Releases auf und laden Sie die für Ihr System geeignete vorkompilierte Version herunter.

📖 Verwendung

Grundlegende Verwendung

root@kitploit:~
# Einzelnes Ziel scannen
./mongodb-scanner -t 127.0.0.1:27017

# Batch-Scan aus Datei
./mongodb-scanner -f targets.txt

# Batch-Scan (20 Threads)
./mongodb-scanner -f targets.txt -c 20

# Scannen und anfällige Ziele speichern
./mongodb-scanner -f targets.txt -o vulnerable.txt

# Benutzerdefinierter Offset-Bereich (schnellerer oder tieferer Scan)
./mongodb-scanner -t 127.0.0.1:27017 --min-offset 20 --max-offset 1000

Kommandozeilenparameter

Format der Zieldatei

Erstellen Sie eine targets.txt-Datei:

root@kitploit:~
# MongoDB Ziel-Liste
127.0.0.1:27017
192.168.1.100:27017
mongodb.example.com:27017

# Wenn kein Port angegeben wird, wird standardmäßig 27017 verwendet
192.168.1.101

🐳 Testumgebung einrichten

Um dieses Tool sicher zu testen, wird empfohlen, eine lokale Testumgebung mit Docker einzurichten.

Schnellstart mit einer anfälligen MongoDB

root@kitploit:~
# Starten von MongoDB 6.0.14 (anfällige Version) mit Zlib-Kompression
docker run -d \
  --name mongodb-vulnerable \
  -p 27017:27017 \
  mongo:6.0.14 \
  --networkMessageCompressors snappy,zlib

# Container-Status prüfen
docker ps

# Schwachstelle testen
./mongodb-scanner -t 127.0.0.1:27017

Verwendung von Docker Compose

Erstellen Sie eine docker-compose.yml-Datei:

root@kitploit:~
version: '3.8'

services:
  # Anfällige Version (mit Zlib)
  mongodb-vulnerable:
    image: mongo:6.0.14
    container_name: mongodb-vulnerable
    ports:
      - "27017:27017"
    command: mongod --networkMessageCompressors snappy,zlib

  # Gefixte Version (zum Vergleich)
  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:

Testumgebung starten:

root@kitploit:~
# Alle Container starten
docker-compose up -d

# Anfällige Version testen
./mongodb-scanner -t 127.0.0.1:27017

# Gefixte Version testen
./mongodb-scanner -t 127.0.0.1:27018

# Stoppen und bereinigen
docker-compose down -v

Testumgebung bereinigen

root@kitploit:~
# Container stoppen und löschen
docker stop mongodb-vulnerable && docker rm mongodb-vulnerable

# Datenvolumes bereinigen
docker volume prune -f

📊 Ausgabebeispiele

Beschreibung des Ausgabeformats

Das Tool verwendet einheitliche Präfixe zur Kennzeichnung von Ausgabeinformationen:

  • [*] – Informationsausgabe (Ziel, Version, Konfiguration usw.)
  • [+] – Erfolg / anfällig / Daten extrahiert
  • [-] – Fehlgeschlagen / sicher / nicht anfällig
  • [!] – Warnung / wichtiger Hinweis

Einzelscan – anfällig

root@kitploit:~
╔══════════════════════════════════════════════════════════════╗
║  MongoDB CVE-2025-14847 Schwachstellen-Erkennungstool        ║
╚══════════════════════════════════════════════════════════════╝
⚠️   Nur für autorisierte Sicherheitstests | Unbefugte Tests können illegal sein

[*] Ziele: 1 | Threads: 10 | Timeout: 2s | Offset: 20-1000
[*] Scan gestartet...

[*] Ziel: 127.0.0.1:27017
[*] Version: 6.0.14
[+] Anfällige Version: Ja
[+] Zlib-Kompression: Aktiviert
[!] Schwachstelle ausnutzbar, beginne mit Speicherextraktion...
[+] Offset=229 Länge=250: :00\"},\"s\":\"I\",  \"c\":\"NETWORK\",  \"id\":22944,   \"ctx\":\"conn102932\",

[+] 127.0.0.1:27017 - Schwachstelle ausnutzbar (v6.0.14) - 3468ms
[+] Erfolgreich 1 Speicherdateneintrag extrahiert:
    [1] :00\"},\"s\":\"I\",  \"c\":\"NETWORK\",  \"id\":22944,   \"ctx\":\"conn102932\",\"msg\":\"Connection ended\",\"attr\":{\"remote\":\"172.17.0.1:44936\"...

======================================================================
[*] Scan abgeschlossen | Gesamt: 1 | Ausnutzbar: 1 | Sicher: 0 | Dauer: 3.4s
======================================================================

Einzelscan – Version sicher

root@kitploit:~
[*] Ziel: 127.0.0.1:27018
[*] Version: 6.0.27
[-] Anfällige Version: Nein

[-] 127.0.0.1:27018 - Version sicher (v6.0.27) - 156ms

======================================================================
[*] Scan abgeschlossen | Gesamt: 1 | Ausnutzbar: 0 | Sicher: 1 | Dauer: 0.2s
======================================================================

Einzelscan – Zlib nicht aktiviert

root@kitploit:~
[*] Ziel: 127.0.0.1:27017
[*] Version: 6.0.14
[+] Anfällige Version: Ja
[-] Zlib-Kompression: Nicht aktiviert

[-] 127.0.0.1:27017 - Zlib nicht aktiviert (v6.0.14) - 234ms

======================================================================
[*] Scan abgeschlossen | Gesamt: 1 | Ausnutzbar: 0 | Sicher: 1 | Dauer: 0.3s
======================================================================

Batch-Scan

root@kitploit:~
[*] Ziele: 5 | Threads: 10 | Timeout: 2s | Offset: 20-8192
[*] Scan gestartet...

[+] 192.168.1.10:27017 - Schwachstelle ausnutzbar (v6.0.14) - 3521ms
[+] Erfolgreich 2 Speicherdateneinträge extrahiert:
    [1] Connection ended...
    [2] network statistics...

[-] 192.168.1.11:27017 - Version sicher (v6.0.27) - 145ms
[-] 192.168.1.12:27017 - Zlib nicht aktiviert (v6.0.14) - 198ms
[+] 192.168.1.13:27017 - Schwachstelle ausnutzbar (v7.0.15) - 2987ms
[!] 192.168.1.14:27017 - Schwachstelle ausnutzbar, aber keine Daten extrahiert (v6.0.20) - 4123ms

======================================================================
[*] Scan abgeschlossen | Gesamt: 5 | Ausnutzbar: 3 | Sicher: 2 | Dauer: 5.2s
======================================================================

[+] Ausnutzbare Ziele wurden gespeichert in: vulnerable.txt

🔬 Erkennungsprinzip

Dieses Tool verwendet einen dreistufigen Erkennungsmechanismus:

1️⃣ Versionserkennung

  • Verbindung zur MongoDB-Instanz herstellen
  • Versionsinformationen abrufen (Befehl buildInfo)
  • Prüfen, ob die Version im betroffenen Bereich liegt

2️⃣ Zlib-Komprimierungsunterstützung prüfen

  • Senden eines Zlib-Komprimierungstestpakets
  • Prüfen, ob der Server eine komprimierte Antwort zurückgibt
  • Bestätigen, ob die Zlib-Komprimierungsfunktion aktiviert ist

3️⃣ Speicherleck-Extraktion

  • Senden manipulierter komprimierter Datenpakete
    • Behaupten, dass die dekomprimierte Größe viel größer ist als die tatsächliche
    • Server auslösen, um nicht initialisierten Heap-Speicher zu lesen
  • Mehrere Offsets scannen, um mehr Daten zu extrahieren
  • Serverantwort dekomprimieren und die extrahierten Feldnamen anzeigen
  • Gefundene Speicherdaten in Echtzeit anzeigen

Entscheidungslogik

BedingungErgebnis
Anfällige Version + Zlib aktiviert + Daten extrahiert✅ Schwachstelle ausnutzbar – Leckdaten anzeigen
Anfällige Version + Zlib aktiviert + keine Daten extrahiert⚠️ Schwachstelle ausnutzbar, aber keine Daten extrahiert
Anfällige Version + Zlib nicht aktiviert❌ Zlib nicht aktiviert – nicht ausnutzbar

🛠️ Behebungsvorschläge

Notfall-Lösungen

Sofort auf eine der folgenden gefixten Versionen upgraden:

  • 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

Temporäre Abhilfemaßnahmen

Wenn ein Upgrade kurzfristig nicht möglich ist, können folgende temporäre Maßnahmen ergriffen werden:

1. Zlib-Kompression deaktivieren

In der mongod.conf oder mongos.conf konfigurieren:

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

Oder in den Startparametern zlib explizit ausschließen:

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

2. Andere Komprimierungsalgorithmen verwenden

Empfohlen wird die Verwendung von snappy oder zstd anstelle von zlib:

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

3. Netzwerkzugriffskontrolle

  • MongoDB-Port nur für vertrauenswürdige IPs öffnen
  • Firewall-Regeln oder bindIp-Konfiguration verwenden
  • TLS/SSL-Verschlüsselung für die Übertragung aktivieren

4. Zugriffskontrolle aktivieren

  • Authentifizierungsmechanismus aktivieren (--auth-Parameter)
  • Starke Passwortrichtlinien verwenden
  • Prinzip der minimalen Berechtigungen umsetzen

5. Überwachung und Prüfung

  • Überwachung auf ungewöhnliche Verbindungen und Speicherzugriffsmuster
  • Audit-Logs aktivieren
  • Regelmäßige Überprüfung der Sicherheitslogs

⚠️ Wichtiger Hinweis: Temporäre Abhilfemaßnahmen können das Risiko nur verringern, sind aber keine endgültige Lösung. Es wird dringend empfohlen, so bald wie möglich auf eine gefixten Version zu aktualisieren.

⚠️ Haftungsausschluss

Wichtiger Hinweis:

  • ✅ Dieses Tool ist nur für autorisierte Sicherheitstests und Schwachstellenbewertungen bestimmt
  • ✅ Stellen Sie vor der Verwendung dieses Tools sicher, dass Sie die Berechtigung haben, das Zielsystem zu testen
  • ❌ Unbefugte Scans können gegen Gesetze und Vorschriften verstoßen
  • ❌ Der Autor übernimmt keine Verantwortung für Missbrauch

Durch die Verwendung dieses Tools erklären Sie sich damit einverstanden:

  1. Es nur auf Systemen zu verwenden, für die Sie eine ausdrückliche Genehmigung haben
  2. Die Gesetze und Vorschriften Ihres Landes einzuhalten
  3. Die Verantwortung für alle Konsequenzen aus der Nutzung dieses Tools zu übernehmen

📄 Lizenz

Dieses Projekt ist unter der MIT-Lizenz lizenziert.

🤝 Beiträge

Issues und Pull Requests sind willkommen!

Beitragsrichtlinien

  1. Forken Sie dieses Repository
  2. Erstellen Sie einen Feature-Branch (git checkout -b feature/AmazingFeature)
  3. Committen Sie Ihre Änderungen (git commit -m 'Add some AmazingFeature')
  4. Pushen Sie den Branch (git push origin feature/AmazingFeature)
  5. Öffnen Sie einen Pull Request

📚 Referenzen

  • CVE-2025-14847 Details
  • MongoDB Security Bulletin
  • MongoDB Upgrade-Anleitung
  • MongoDB Komprimierungskonfiguration

👨‍💻 Autor

onewinner – @onewinner

Projekt-URL: https://github.com/onewinner/CVE-2025-14847

📝 Changelog

v1.0.0 (2025-12-26)

  • 🎉 Erstveröffentlichung
  • ✅ Unterstützung für Einzel- und Batch-Scans
  • ✅ Unterstützung für Multi-Thread-Scans
  • ✅ Automatische Versionserkennung und Risikobewertung
  • ✅ Intelligente Speicherleck-Erkennung
  • ✅ Detaillierte Behebungsvorschläge

⭐ Wenn dieses Projekt für Sie hilfreich ist, geben Sie bitte einen Stern!

Mit ❤️ erstellt von Sicherheitsforschern

Tool herunterladen
VersionenStatus
8.2.0 - 8.2.2⚠️ Betroffen
8.0.0 - 8.0.16⚠️ Betroffen
7.0.0 - 7.0.27⚠️ Betroffen
6.0.0 - 6.0.26⚠️ Betroffen
5.0.0 - 5.0.31⚠️ Betroffen
4.4.0 - 4.4.29⚠️ Betroffen
4.2.x alle Versionen⚠️ Betroffen
4.0.x alle Versionen⚠️ Betroffen
3.6.x alle Versionen⚠️ Betroffen
ParameterBeschreibungStandardwert
-t <target>Einzelnes Ziel (z. B. 127.0.0.1:27017)-
-f <file>Zieldatei (ein Ziel pro Zeile)-
-c <num>Anzahl der gleichzeitigen Threads10
-timeout <time>Verbindungs-Timeout2s
-o <file>Ausgabedatei (speichert anfällige Ziele)-
--min-offset <num>Minimale Dokumentlängen-Offset20
--max-offset <num>Maximale Dokumentlängen-Offset8192
Nicht anfällige Version✅ Version sicher