How To Fix CVE-2022-24706- A Privilege Escalation Vulnerability In Apache CouchDB


Apache officially issued the risk for Apache CouchDB privilege escalation vulnerability CVE-2022-24706 with critical severity. This vulnerability can allow attackers to execute code on a targeted client or server without being authenticated if not patched properly. Since this vulnerability allows attackers to access an improperly secured installation to gain admin privileges without authentication, there is a need to mitigate the risk. This article will discuss how to fix CVE-2022-24706, a privilege escalation vulnerability in Apache CouchDB.

About Apache CouchDB

Apache CouchDB allows you to access data where required. The Couch Replication Protocol is applied in different projects and products spanning every imaginable computing environment. It ranges from globally distributed server clusters and mobile phones to web browsers.

This protocol enables data to flow seamlessly between server clusters to web browsers and mobile phones, enabling a compelling offline-first user experience. It is done while maintaining strong reliability and high performance. CouchDB comes with the developer-friendly query language and MapReduce for efficient, simple, and comprehensive data retrieval.

Summary Of CVE-2022-24706

The flaw allows an attacker to access a default installation with admin privileges without authentication.

  • CouchDB opens a random network port bound to the available interfaces apprehension of clustered operation or runtime introspection. A utility process known as epmd advertises the random port to the network. The epmd itself listens on the fixed port.
  • CouchDB packaging opted for a default cookie value for single-node and clustered installations previously. That cookie authenticates the communication between Erlang nodes.

The CouchDB documentation has always given recommendations for securing an installation properly. However, all users do not follow the advice.

See also  Decoding TLS 1.3 Protocol Handshake With Wireshark

They recommend a firewall in front of each CouchDB installation. The full CouchDB API is available on the registered port ‘5984’. It’s the only port that requires to be exposed for a single-node installation. The installations that do not expose a separate distribution port to external access are not vulnerable.

Associated CVE ID CVE-2022-22966
Description Privilege Escalation Vulnerability in Apache CouchDb
Associated ZDI ID
CVSS Score 9.8 Critical
Vector CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Impact Score 5.9
Exploitability Score 3.9
Attack Vector (AV) Network
Attack Complexity (AC) Low
Privilege Required (PR) None
User Interaction (UI) None
Scope Unchanged
Confidentiality (C) High
Integrity (I) High
availability (a) High

Products Affected By CVE-2022-24706

Security researcher Alex Vandiver says, CouchDB v3.2.1 and earlier are affected by the flaw.

Vendor: Apache Software Foundation

Product: Apache CouchDB

Versions Affected: <=3.2.1: affects 3.2.1 and prior versions

How To fix CVE-2022-24706-A Privilege Escalation Vulnerability In Apache CouchDB?

  1. Upgrade CouchDB to v3.2.2 and later once it is available, as CouchDB v3.2.2 and latest will refuse to start with a former default Erlang cookie value of ‘monster’. Installations upgraded to this version are forced to select a different value. 
  2. Network firewalls needed to be deployed in front of the CouchDB installations and block all the network ports except port ‘5984’, which is the default port that CouchDB API works on.
  3. Moreover, all binary packages have been updated to bind the epmd and the CouchDB distribution port to 127.0.0.1 or::1, respectively.

 

 

Leave a Reply

Your email address will not be published. Required fields are marked *