CVE-2021-25646
Authenticated users can override system configurations in their requests which allows them to execute arbitrary code.
- Published
- Jan 29, 2021
- Updated
- Feb 13, 2025
- Assigning CNA
- apache
- Evidence observed
- Aug 8, 2026
Primary CVSS
nvd · CVSS 3.1
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:HHigh · next 30 days
- Percentile
- 99.9%
- Model date
- Oct 18, 2026
EPSS is a statistical estimate, not a certainty or a measure of impact. Combine it with CVSS, KEV status, exposure and your environment.
Summary
Apache Druid includes the ability to execute user-provided JavaScript code embedded in various types of requests. This functionality is intended for use in high-trust environments, and is disabled by default. However, in Druid 0.20.0 and earlier, it is possible for an authenticated user to send a specially-crafted request that forces Druid to run user-provided JavaScript code for that request, regardless of server configuration. This can be leveraged to execute code on the target machine with the privileges of the Druid server process.
Sources
apache-druid/CVE-2021-25646
Apache Druid Embedded Javascript Remote Code Execution (CVE-2021-25646)
Vulhub vulnerability labsDeclared conditions
- lab image version: vulhub/apache-druid:0.20.0(apache-druid/CVE-2021-25646/docker-compose.yml:services.web.image)
modules/exploits/linux/http/apache_druid_js_rce.rb
Metasploit Framework modulesDeclared conditions
- platform: Linux,Unix($.exploit_linux/http/apache_druid_js_rce.platform)
- verification: check_declared($.exploit_linux/http/apache_druid_js_rce.check)
http/cves/2021/CVE-2021-25646.yaml
Nuclei TemplatesDeclared conditions
- network: http($.protocol_keys)
- verification: regex,status,word($.matchers[*].type)
Responsible use
Use vulnerability information only on systems you own or are authorized to test. Kitploit links to public research metadata and does not store exploit code or malicious payloads.