9.8
CRITICAL
CVE-2023-37895
Apache Jackrabbit Commons Beanutils Remote Code Execution Vulnerability
Description

Java object deserialization issue in Jackrabbit webapp/standalone on all platforms allows attacker to remotely execute code via RMIVersions up to (including) 2.20.10 (stable branch) and 2.21.17 (unstable branch) use the component "commons-beanutils", which contains a class that can be used for remote code execution over RMI. Users are advised to immediately update to versions 2.20.11 or 2.21.18. Note that earlier stable branches (1.0.x .. 2.18.x) have been EOLd already and do not receive updates anymore. In general, RMI support can expose vulnerabilities by the mere presence of an exploitable class on the classpath. Even if Jackrabbit itself does not contain any code known to be exploitable anymore, adding other components to your server can expose the same type of problem. We therefore recommend to disable RMI access altogether (see further below), and will discuss deprecating RMI support in future Jackrabbit releases. How to check whether RMI support is enabledRMI support can be over an RMI-specific TCP port, and over an HTTP binding. Both are by default enabled in Jackrabbit webapp/standalone. The native RMI protocol by default uses port 1099. To check whether it is enabled, tools like "netstat" can be used to check. RMI-over-HTTP in Jackrabbit by default uses the path "/rmi". So when running standalone on port 8080, check whether an HTTP GET request on localhost:8080/rmi returns 404 (not enabled) or 200 (enabled). Note that the HTTP path may be different when the webapp is deployed in a container as non-root context, in which case the prefix is under the user's control. Turning off RMIFind web.xml (either in JAR/WAR file or in unpacked web application folder), and remove the declaration and the mapping definition for the RemoteBindingServlet:         <servlet>             <servlet-name>RMI</servlet-name>             <servlet-class>org.apache.jackrabbit.servlet.remote.RemoteBindingServlet</servlet-class>         </servlet>         <servlet-mapping>             <servlet-name>RMI</servlet-name>             <url-pattern>/rmi</url-pattern>         </servlet-mapping> Find the bootstrap.properties file (in $REPOSITORY_HOME), and set         rmi.enabled=false     and also remove         rmi.host         rmi.port         rmi.url-pattern  If there is no file named bootstrap.properties in $REPOSITORY_HOME, it is located somewhere in the classpath. In this case, place a copy in $REPOSITORY_HOME and modify it as explained.  

INFO

Published Date :

July 25, 2023, 3:15 p.m.

Last Modified :

Aug. 3, 2023, 1:46 p.m.

Remotely Exploitable :

Yes !

Impact Score :

5.9

Exploitability Score :

3.9
Public PoC/Exploit Available at Github

CVE-2023-37895 has a 1 public PoC/Exploit available at Github. Go to the Public Exploits tab to see the list.

Affected Products

The following products are affected by CVE-2023-37895 vulnerability. Even if cvefeed.io is aware of the exact versions of the products that are affected, the information is not represented in the table below.

ID Vendor Product Action
1 Apache jackrabbit
References to Advisories, Solutions, and Tools

Here, you will find a curated list of external links that provide in-depth information, practical solutions, and valuable tools related to CVE-2023-37895.

URL Resource
http://seclists.org/fulldisclosure/2023/Jul/43 Broken Link
http://www.openwall.com/lists/oss-security/2023/07/25/8 Mailing List Third Party Advisory
https://lists.apache.org/[email protected] Mailing List Vendor Advisory
https://lists.apache.org/thread/j03b3qdhborc2jrhdc4d765d3jkh8bfw Mailing List Vendor Advisory

We scan GitHub repositories to detect new proof-of-concept exploits. Following list is a collection of public exploits and proof-of-concepts, which have been published on GitHub (sorted by the most recently updated).

a rep for documenting my study, may be from 0 to 0.1

Java Dockerfile Shell Python HTML

Updated: 1 week, 4 days ago
1833 stars 266 fork 266 watcher
Born at : Oct. 18, 2021, 1:21 a.m. This repo has been linked 34 different CVEs too.

Results are limited to the first 15 repositories due to potential performance issues.

The following list is the news that have been mention CVE-2023-37895 vulnerability anywhere in the article.

The following table lists the changes that have been made to the CVE-2023-37895 vulnerability over time.

Vulnerability history details can be useful for understanding the evolution of a vulnerability, and for identifying the most recent changes that may impact the vulnerability's severity, exploitability, or other characteristics.

  • CVE Modified by [email protected]

    May. 14, 2024

    Action Type Old Value New Value
  • Initial Analysis by [email protected]

    Aug. 03, 2023

    Action Type Old Value New Value
    Added CVSS V3.1 NIST AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
    Changed Reference Type http://seclists.org/fulldisclosure/2023/Jul/43 No Types Assigned http://seclists.org/fulldisclosure/2023/Jul/43 Broken Link
    Changed Reference Type http://www.openwall.com/lists/oss-security/2023/07/25/8 No Types Assigned http://www.openwall.com/lists/oss-security/2023/07/25/8 Mailing List, Third Party Advisory
    Changed Reference Type https://lists.apache.org/[email protected] No Types Assigned https://lists.apache.org/[email protected] Mailing List, Vendor Advisory
    Changed Reference Type https://lists.apache.org/thread/j03b3qdhborc2jrhdc4d765d3jkh8bfw No Types Assigned https://lists.apache.org/thread/j03b3qdhborc2jrhdc4d765d3jkh8bfw Mailing List, Vendor Advisory
    Added CPE Configuration OR *cpe:2.3:a:apache:jackrabbit:*:*:*:*:*:*:*:* versions from (including) 1.0.0 up to (excluding) 2.20.11 *cpe:2.3:a:apache:jackrabbit:*:*:*:*:*:*:*:* versions from (including) 2.21.0 up to (excluding) 2.21.18
  • CVE Modified by [email protected]

    Jul. 26, 2023

    Action Type Old Value New Value
    Added Reference http://seclists.org/fulldisclosure/2023/Jul/43 [No Types Assigned]
EPSS is a daily estimate of the probability of exploitation activity being observed over the next 30 days. Following chart shows the EPSS score history of the vulnerability.
CWE - Common Weakness Enumeration

While CVE identifies specific instances of vulnerabilities, CWE categorizes the common flaws or weaknesses that can lead to vulnerabilities. CVE-2023-37895 is associated with the following CWEs:

Common Attack Pattern Enumeration and Classification (CAPEC)

Common Attack Pattern Enumeration and Classification (CAPEC) stores attack patterns, which are descriptions of the common attributes and approaches employed by adversaries to exploit the CVE-2023-37895 weaknesses.

Exploit Prediction

EPSS is a daily estimate of the probability of exploitation activity being observed over the next 30 days.

3.64 }} -4.04%

score

0.91868

percentile

CVSS31 - Vulnerability Scoring System
Attack Vector
Attack Complexity
Privileges Required
User Interaction
Scope
Confidentiality
Integrity
Availability