Vulnerability Details : CVE-2017-12635

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.
Vulnerability category: Execute code
Published 2017-11-14 20:29:00
Updated 2019-10-03 00:03:26
View at NVD,   CVE.org
At least one public exploit which can be used to exploit this vulnerability exists!

Exploit prediction scoring system (EPSS) score for CVE-2017-12635

Probability of exploitation activity in the next 30 days: 97.53%

Percentile, the proportion of vulnerabilities that are scored at or less: ~ 100 % EPSS Score History EPSS FAQ

Metasploit modules for CVE-2017-12635

  • Apache CouchDB Arbitrary Command Execution
    Disclosure Date : 2016-04-06
    exploit/linux/http/apache_couchdb_cmd_exec
    CouchDB administrative users can configure the database server via HTTP(S). Some of the configuration options include paths for operating system-level binaries that are subsequently launched by CouchDB. This allows an admin user in Apache CouchDB before 1.7.0 and 2.x before 2.1.1 to execute arbitrary shell commands as the CouchDB user, including downloading and executing scripts from the public internet. Authors: - Max Justicz - Joan Touzet - Green-m <[email protected]>
  • CouchDB Enum Utility
    auxiliary/scanner/couchdb/couchdb_enum
    This module enumerates databases on CouchDB using the REST API (without authentication by default). Authors: - Max Justicz - Roberto Soares Espreto <[email protected]> - Hendrik Van Belleghem - Green-m <[email protected]>

CVSS scores for CVE-2017-12635

Base Score Base Severity CVSS Vector Exploitability Score Impact Score Source
10.0
HIGH AV:N/AC:L/Au:N/C:C/I:C/A:C
10.0
10.0
[email protected]
9.8
CRITICAL CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
3.9
5.9
[email protected]

CWE ids for CVE-2017-12635

References for CVE-2017-12635

Products affected by CVE-2017-12635

This web site uses cookies for managing your session and website analytics (Google analytics) purposes as described in our privacy policy.
By using this web site you are agreeing to CVEdetails.com terms of use!