Skip to main content

Couchdb CVE-2017-12635

CRITICAL
Improper Privilege Management (CWE-269)
2017-11-14 security@apache.org
9.8
CVSS 3.0 · NVD
Share

Severity by source

NVD PRIMARY
9.8 CRITICAL
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Primary rating from NVD · only source for this CVE.

CVSS VectorNVD

CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High

Lifecycle Timeline

1
CVE Published
Nov 14, 2017 - 20:29 cve.org
CRITICAL 9.8

DescriptionCVE.org

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.

AnalysisAI

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. Rated critical severity (CVSS 9.8), this vulnerability is remotely exploitable, no authentication required, low attack complexity. Public exploit code available and EPSS exploitation probability 94.1%.

Technical ContextAI

This vulnerability is classified as Improper Privilege Management (CWE-269), which allows attackers to escalate privileges to gain unauthorized elevated access. 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. Affected products include: Apache Couchdb. Version information: before 1.7.0.

RemediationAI

No vendor patch is available at time of analysis. Monitor vendor advisories for updates. Apply principle of least privilege, validate privilege transitions, implement proper role separation.

CVE-2017-12636 HIGH POC
7.2 Nov 14

CouchDB administrative users can configure the database server via HTTP(S). Rated high severity (CVSS 7.2), this vulnera

CVE-2014-2668 MEDIUM POC
5.0 Mar 28

Apache CouchDB 1.5.0 and earlier allows remote attackers to cause a denial of service (CPU and memory consumption) via t

CVE-2022-24706 CRITICAL POC
9.8 Apr 26

In Apache CouchDB prior to 3.2.2, an attacker can access an improperly secured default installation without authenticati

CVE-2018-8007 HIGH POC
7.2 Jul 11

Apache CouchDB administrative users can configure the database server via HTTP(S). Rated high severity (CVSS 7.2), this

CVE-2020-1955 CRITICAL
9.8 May 20

CouchDB version 3.0.0 shipped with a new configuration setting that governs access control to the entire database server

CVE-2012-5641 MEDIUM POC
5.0 Mar 18

Directory traversal vulnerability in the partition2 function in mochiweb_util.erl in MochiWeb before 2.4.0, as used in A

CVE-2018-14889 HIGH
7.8 Sep 21

CouchDB in Vectra Networks Cognito Brain and Sensor before 4.3 contains a local code execution vulnerability. Rated high

CVE-2021-38295 HIGH
7.3 Oct 14

In Apache CouchDB, a malicious user with permission to create documents in a database is able to attach a HTML attachmen

CVE-2018-11769 HIGH
7.2 Aug 08

CouchDB administrative users before 2.2.0 can configure the database server via HTTP(S). Rated high severity (CVSS 7.2),

CVE-2012-5649 MEDIUM
6.8 May 23

Apache CouchDB before 1.0.4, 1.1.x before 1.1.2, and 1.2.x before 1.2.1 allows remote attackers to execute arbitrary cod

CVE-2023-45725 MEDIUM
5.7 Dec 13

Design document functions which receive a user http request object may expose authorization or session cookie headers of

CVE-2023-26268 MEDIUM
5.3 May 02

Design documents with matching document IDs, from databases on the same cluster, may share a mutable Javascript environm

Share

CVE-2017-12635 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy