Graylog 2.0-5.1.10 Unrestricted Class Instantiation via /api/system/cluster_config/
CVE-2024-24824 Published on February 7, 2024
graylog2-server vulnerable to instantiation of arbitrary classes triggered by API request
Graylog is a free and open log management platform. Starting in version 2.0.0 and prior to versions 5.1.11 and 5.2.4, arbitrary classes can be loaded and instantiated using a HTTP PUT request to the `/api/system/cluster_config/` endpoint. Graylog's cluster config system uses fully qualified class names as config keys. To validate the existence of the requested class before using them, Graylog loads the class using the class loader. If a user with the appropriate permissions performs the request, arbitrary classes with 1-arg String constructors can be instantiated. This will execute arbitrary code that is run during class instantiation. In the specific use case of `java.io.File`, the behavior of the internal web-server stack will lead to information exposure by including the entire file content in the response to the REST request. Versions 5.1.11 and 5.2.4 contain a fix for this issue.
Vulnerability Analysis
CVE-2024-24824 is exploitable with network access, and requires small amount of user privileges. This vulnerability is considered to have a low attack complexity. An automatable proof of concept (POC) exploit exists. The potential impact of an exploit of this vulnerability is considered to be very high.
Weakness Types
What is an Authorization Vulnerability?
The software does not restrict or incorrectly restricts access to a resource from an unauthorized actor.
CVE-2024-24824 has been classified to as an Authorization vulnerability or weakness.
What is an AuthZ Vulnerability?
The software performs an authorization check when an actor attempts to access a resource or perform an action, but it does not correctly perform the check. This allows attackers to bypass intended access restrictions.
CVE-2024-24824 has been classified to as an AuthZ vulnerability or weakness.
Products Associated with CVE-2024-24824
Want to know whenever a new CVE is published for Graylog? stack.watch will email you.
Affected Versions
graylog2-server:- Version >= 2.0.0, < 5.1.11 is affected.
- Version >= 5.2.0, < 5.2.4 is affected.
Vulnerable Packages
The following package name and versions may be associated with CVE-2024-24824
| Package Manager | Vulnerable Package | Versions | Fixed In |
|---|---|---|---|
| maven | org.graylog2:graylog2-server | >= 2.0.0, < 5.1.11 | 5.1.11 |
| maven | org.graylog2:graylog2-server | >= 5.2.0-alpha.1, < 5.2.4 | 5.2.4 |
Exploit Probability
EPSS (Exploit Prediction Scoring System) scores estimate the probability that a vulnerability will be exploited in the wild within the next 30 days. The percentile shows you how this score compares to all other vulnerabilities.