CVE-2021-36749 Druid ingestion system Authenticated users can read data from other sources than intended
Authenticated users can bypass application restrictions to read local files via HTTP input source, exposing sensitive data.
- Exploited in the wild
- Not known
- Login needed
- Any signed-in user
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2021-36749?
CVE-2021-36749 is a medium-severity server-side request forgery vulnerability in Apache Druid, published on 24 Sep 2021. Any signed-in user can exploit it over the network, with no action from the victim.
Official description
In the Druid ingestion system, the InputSource is used for reading data from a certain data source. However, the HTTP InputSource allows authenticated users to read data from other sources than intended, such as the local file system, with the privileges of the Druid server process. This is not an elevation of privilege when users access Druid directly, since Druid also provides the Local InputSource, which allows the same level of access. But it is problematic when users interact with Druid indirectly through an application that allows users to specify the HTTP InputSource, but not the Local InputSource. In this case, users could bypass the application-level restriction by passing a file URL to the HTTP InputSource. This issue was previously mentioned as being fixed in 0.21.0 as per CVE-2021-26920 but was not fixed in 0.21.0 or 0.21.1.
Weakness: CWE-863
Which versions are affected by CVE-2021-36749?
2 open source packages ship an affected version, including org.apache.druid:druid-core. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
org.apache.druid:druid-core Maven | All versions | 0.22.0 |
org.apache.druid:druid-core Maven | All versions | 0.22.0 |
Products include Apache Druid.
How do I fix CVE-2021-36749?
Upgrade org.apache.druid:druid-core to 0.22.0 or later.
Upgrade, and send outbound requests through an allow-list that blocks internal addresses. More about Server-side request forgery.
Is CVE-2021-36749 being exploited?
It is not confirmed as exploited in the wild, but public exploit code for CVE-2021-36749 exists.
Public exploit code: 1 Nuclei template and 4 proofs of concept on GitHub.
Other vulnerabilities in Apache Druid
- CVE-2026-23906 Apache Druid: Authentication Bypass via LDAP Anonymous Bind
- CVE-2025-59390 Apache Druid: Kerberos authenticaton chooses a cryptographically unsecure secret if not configured explicitly.
- CVE-2021-26919 Apache Druid Authenticated users can execute arbitrary code from malicious MySQL database systems.
- CVE-2021-25646 Authenticated users can override system configurations in their requests which allows them to execute arbitrary code.
- CVE-2024-45537 Apache Druid: Users can provide MySQL JDBC properties not on allow list
Sources
Also known as GHSA-9p5g-vg43-mj5r.