CVE-2024-24824CWE-284CWE-863

graylog2-server vulnerable to instantiation of arbitrary classes triggered by API request

High · published February 7, 2024

CVSS v3.1
8.8
EPSS
35%
Percentile
98.4
In the wild
Unconfirmed
What it is

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.

The record
Technical detail
CVSS v3.1
8.8 · HIGH
Vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
CVSS v4.0
Not supplied
EPSS
0.34739 · 98.4th percentile
Weaknesses
CWE-284 · Improper Access Control; CWE-863 · Incorrect Authorization
Published
2024-02-07T17:25Z
EPSS history
Timeline
  • 07 FEB 17:25Z
    graylog2-server vulnerable to instantiation of arbitrary classes triggered by API request
    cvelistv5