CVE-2017-12635

Public Exploit

Description

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.

Category

9.8
CVSS
Severity: Critical
CVSS 3.0 •
CVSS 2.0 •
EPSS 94.15% Top 5%
Vendor Advisory gentoo.org
Affected: Apache Software Foundation Apache CouchDB
Published at:
Updated at:

References

Frequently Asked Questions

What is the severity of CVE-2017-12635?
CVE-2017-12635 has been scored as a critical severity vulnerability.
How to fix CVE-2017-12635?
To fix CVE-2017-12635, make sure you are using an up-to-date version of the affected component(s) by checking the vendor release notes. As for now, there are no other specific guidelines available.
Is CVE-2017-12635 being actively exploited in the wild?
It is possible that CVE-2017-12635 is being exploited or will be exploited in a near future based on public information. According to its EPSS score, there is a ~94% probability that this vulnerability will be exploited by malicious actors in the next 30 days.
What software or system is affected by CVE-2017-12635?
CVE-2017-12635 affects Apache Software Foundation Apache CouchDB.
This platform uses data from the NIST NVD, MITRE CVE, MITRE CWE, First.org and CISA KEV but is not endorsed or certified by these entities. CVE is a registred trademark of the MITRE Corporation and the authoritative source of CVE content is MITRE's CVE web site. CWE is a registred trademark of the MITRE Corporation and the authoritative source of CWE content is MITRE's CWE web site.
© 2025 Under My Watch. All Rights Reserved.