Skip to content
CouchDB
Service

CouchDB

CouchDB is a NoSQL database using HTTP API. Attackers enumerate exposed ports, probe admin interfaces, exploit misconfigs, escalate via Erlang cookie, and exfiltrate JSON documents

:5984 :6984 2 guides 2 phases
2 min read Created: Apr 4, 2026 Updated: Sep 14, 2026

Apache CouchDB is a document-oriented NoSQL database that uses JSON for documents and exposes a RESTful HTTP API. It listens on TCP port 5984 by default. Nmap identifies it as couchdb or http on this port.

CouchDB has been involved in numerous data exposure incidents due to permissive default configurations. The "Admin Party" mode in older versions grants full admin access to anyone without authentication. Even on newer versions, misconfigured installations allow unauthenticated database listing and data access. CouchDB's built-in replication feature can be abused to exfiltrate entire databases to an attacker-controlled server. CVE-2017-12635 and CVE-2017-12636 demonstrated privilege escalation and remote code execution through the REST API.

Enumeration begins with requesting the root endpoint (/) for version information, then /_all_dbs to list all databases. Each database can be queried with /_all_docs to retrieve every document. The /_config or /_node/_local/_config endpoint (depending on version) may expose server configuration including credentials. Checking for admin access and the ability to create design documents with JavaScript view functions can lead to server-side code execution.

Enumeration

List DBs, dump docs, and extract hashes from _users

1

CouchDB Database Enumeration

Enumerate CouchDB instances via HTTP API to discover databases, documents, users, and configuration details using curl and specialized tools.

Sep 14, 2026 • 3 min read

Exploitation

Exploit CouchDB via admin party, CVE flaws, and Erlang RCE

1

CouchDB Unauthenticated Admin Access

Exploit CouchDB misconfiguration allowing unauthenticated admin access, enabling full database control, data exfiltration, and remote code execution via HTTP API.

Sep 14, 2026 • 4 min read