CVE intelligence and bounded remediation
CVE-2017-12635 — Apache Couchdb security vulnerability
Due to differences in the Erlang-based JSON parser and JavaScript-based JSON parser, it is possible in Apache CouchDB before 1.7.0 and 2.x before 2.1.1 to submit _users documents with duplicate keys for 'roles' used for access control within the database, including the special case '_admin' role, that denotes administrative users. In combination with CVE-2017-12636 (Remote Code Execution), this can be used to give non-admin users access to arbitrary shell commands on the server as the database system user. The JSON parser differences result in behaviour that if two 'roles' keys are available in the JSON, the second one will be used for authorising the document write, but the first 'roles' key is used for subsequent authorization for the newly created user. By design, users can not assign themselves roles. The vulnerability allows non-admin users to give themselves admin privileges.
- Severity
- Critical
- CVSS
- 9.8 (3.0)
- Published
- 2017-11-14
- CISA KEV
- Not currently listed
- Ecosystem
- javascript/npm
- Weaknesses
- CWE-269
Affected products
- apache / couchdb
- apache / couchdb / 2.0.0
Matched remediation archetype
Privilege escalation and unsafe privilege management
This catalog composition supplies bounded fallback guidance. Explicitly reviewed curated workflows load with the complete record below.
Check exposure
- Map service accounts, operating-system identities, roles, capabilities, impersonation, set-user transitions, and administrative helper paths.
- Determine whether untrusted users or lower-privilege processes can reach the affected transition or modify inputs it trusts.
- Review file, socket, registry, device, job, container, and cloud-role permissions used before and after privilege changes.
Remediate safely
- Apply the supported fix and redesign privileged operations as a minimal, authenticated, allowlisted interface.
- Drop privileges before processing untrusted input, verify the drop succeeds, and remove unnecessary roles, capabilities, and write permissions.
- Validate ownership and permissions at time of use and add explicit lower-to-higher privilege boundary tests.
Authoritative sources
Complete CVE record and remediation plan
The detailed catalog view below loads this exact record, its source evidence, and the full seven-phase agentic change plan.