CVE-2021-25646
published 2021-01-29CVE-2021-25646: Apache Druid includes the ability to execute user-provided JavaScript code embedded in various types of requests. This functionality is intended for use in…
PriorityP190high8.8CVSS 3.1
AVNACLPRLUINSUCHIHAH
ITWEXPLOITVulnCheck KEVInitial access
Exploited in the wild
EPSS
99.30%
99.9th percentile
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.
Affected
2 ranges
| Vendor | Product | Version range | Fixed in |
|---|---|---|---|
| apache | druid | <= 0.20.0 | — |
| apache_software_foundation | apache_druid | 0.20.0 and earlier – 0.20.0 | — |
Detection & IOCsextracted from sources · hover to see the quote
url/druid/indexer/v1/sampler
commandfunction(){var hTVCCerYZ = new java.util.Scanner(java.lang.Runtime.getRuntime().exec("/bin/sh`@~-c`@~cat /etc/passwd".split("`@~")).getInputStream()).useDelimiter("\A").next();return {timestamp:"4137368",OQtGXcxBVQVL: hTVCCerYZ}}
- →Detect POST requests to /druid/indexer/v1/sampler with a JSON body containing both a 'format':'javascript' parseSpec and an empty-string key ('') with 'enabled':'true' — this is the exploit's mechanism to bypass the disabled-by-default JavaScript guard.
- →The exploit payload uses an empty JSON key ("") to inject JavaScriptConfig with enabled:true, overriding the server's druid.javascript.enabled=false setting. Alert on any Druid API request body containing the pattern '"":{"enabled":"true"}'. ↗
- →Successful exploitation returns HTTP 200 with a JSON body containing both 'numRowsRead' and 'numRowsIndexed' fields, and a Content-Type of application/json. Use these as response-side detection signals.
- →The vulnerability exists in Apache Druid versions 0.20.0 and earlier (confirmed tested on 0.15.1, 0.16.0, 0.17.1, 0.18.0, 0.19.0, 0.20.0). Monitor for exploitation attempts against any of these versions. ↗
- →The exploit abuses Jackson deserialization: when a JSON key resolves to the empty string "", it binds to the unnamed JavaScriptConfig constructor parameter. Monitor for JSON payloads with empty-string keys in Druid API requests. ↗
- →Publicly available proof-of-concept and a Metasploit module exist for this CVE. Treat any unauthenticated or authenticated POST to /druid/indexer/v1/sampler with a javascript-type parseSpec as high-confidence exploitation attempt. ↗
- ·JavaScript execution is disabled by default in Apache Druid via the druid.javascript.enabled flag, but this exploit bypasses that control entirely — do not rely on the default-disabled setting as a mitigation for CVE-2021-25646. ↗
- ·Authentication is not enabled in Apache Druid by default, meaning this RCE is effectively unauthenticated in default deployments. Network-level access controls are the primary compensating control. ↗
CVSS provenance
nvdv3.18.8HIGHCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
nvdv2.09.0CRITICALAV:N/AC:L/Au:S/C:C/I:C/A:C
vulncheck8.8HIGH
vendor_redhat8.8HIGH
CVEs like this are exactly what “Exploited This Week” covers.
Every Monday: what got weaponized or added to CISA KEV in the last seven days — each CVE cross-linked to its PoC, Nuclei template, and detection rule. Free, one email a week, unsubscribe in one click.
GHSA
Code injection in Apache Druid
ghsa·2021-06-16
CVE-2021-25646 [HIGH] CWE-732 Code injection in Apache Druid
Code injection in Apache Druid
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.
OSV
Code injection in Apache Druid
osv·2021-06-16
CVE-2021-25646 [HIGH] Code injection in Apache Druid
Code injection in Apache Druid
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.
VulnCheck
Apache Druid 0.20.0 Remote Command Execution
vulncheck·2021·CVSS 8.8
CVE-2021-25646 [HIGH] Apache Druid 0.20.0 Remote Command Execution
Apache Druid 0.20.0 Remote Command Execution
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.
Affected: Apache druid
Required Action: Apply remediations or mitigations per vendor instructions or discontinue use of the product if remediation or mitigations are unavailable.
Exploitation References: https
Red Hat
druid: Authenticated javascript code injection
vendor_redhat·2021-01-29·CVSS 8.8
CVE-2021-25646 [HIGH] CWE-94 druid: Authenticated javascript code injection
druid: Authenticated javascript code injection
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.
Package: openshift4/ose-metering-hive (Red Hat OpenShift Container Platform 4) - Will not fix
Suricata
ET WEB_SPECIFIC_APPS Possible Apache Druid RCE Inbound (CVE-2021-25646)
suricata·2021-03-29·CVSS 8.8
CVE-2021-25646 [HIGH] ET WEB_SPECIFIC_APPS Possible Apache Druid RCE Inbound (CVE-2021-25646)
ET WEB_SPECIFIC_APPS Possible Apache Druid RCE Inbound (CVE-2021-25646)
Rule: alert http any any -> [$HTTP_SERVERS,$HOME_NET] any (msg:"ET WEB_SPECIFIC_APPS Possible Apache Druid RCE Inbound (CVE-2021-25646)"; flow:established,to_server; http.method; content:"POST"; http.request_body; content:"|22|type|22 3a 20 22|javascript|22|"; fast_pattern; content:"|22|function|22 3a 20|"; pcre:"/^\x22[^\x22]*\x7b[^\x22]*\x7d[^\x22]*\x22[^\x22]*\x22{2}/Rm"; reference:cve,2021-25646; classtype:attempted-admin; sid:2032340; rev:1; metadata:affected_product Apache_HTTP_server, attack_target Server, created_at 2021_03_29, cve CVE_2021_25646, deployment Perimeter, deployment Internal, confidence Medium, signature_severity Major, tag Description_Generated_By_Proofpoint_Nexus, updated_at 2021_03_29;)
Nuclei
Apache Druid - Remote Code Execution
nuclei·CVSS 8.8
CVE-2021-25646 [HIGH] Apache Druid - Remote Code Execution
Apache Druid - Remote Code Execution
Apache Druid is susceptible to remote code execution because by default it lacks authorization and authentication. Attackers can send specially crafted requests to execute arbitrary code with the privileges of processes on the Druid server.
Template:
id: CVE-2021-25646
info:
name: Apache Druid - Remote Code Execution
author: pikpikcu
severity: high
description: |
Apache Druid is susceptible to remote code execution because by default it lacks authorization and authentication. Attackers can send specially crafted requests to execute arbitrary code with the privileges of processes on the Druid server.
impact: |
Successful exploitation of this vulnerability could allow an attacker to execute arbitrary code on the affected system.
remediation: |
Apply t
Metasploit
Apache Druid 0.20.0 Remote Command Execution
metasploit
Apache Druid 0.20.0 Remote Command Execution
Apache Druid 0.20.0 Remote Command Execution
Apache Druid includes the ability to execute user-provided JavaScript code embedded in various types of requests; however, that feature is disabled by default. In Druid versions prior to `0.20.1`, an authenticated user can send a specially-crafted request that both enables the JavaScript code-execution feature and executes the supplied code all at once, allowing for code execution on the server with the privileges of the Druid Server process. More critically, authentication is not enabled in Apache Druid by default. Tested on the following Apache Druid versions: * 0.15.1 * 0.16.0-iap8 * 0.17.1 * 0.18.0-iap3 * 0.19.0-iap7 * 0.20.0-iap4.1 * 0.20.0 * 0.21.0-iap3
Unit42
TuxBot v3: Inside an IoT Botnet Framework With LLM-Assisted Development
blogs_unit42·2026-07-15
CVE-2022-1388 TuxBot v3: Inside an IoT Botnet Framework With LLM-Assisted Development
## TuxBot v3: Inside an IoT Botnet Framework With LLM-Assisted Development
Chris Navarrete
Asher Davila
Doel Santos
Published: July 15, 2026
Malware
Threat Research
C2
DGA
Docker compose
Malware
TuxBot v3 Evolution
VirusTotal
XOR
## Executive Summary
We identified a previously undocumented modular internet-of-things (IoT) botnet framework named TuxBot v3 Evolution.
The malware authors leveraged an LLM to assist in their code development, yielding mixed results. While the AI complied with their request to generate botnet code, it included a safety disclaimer that the developer failed to remove before shipping.
Although the LLM clearly aided in constructing the botnet, several functions in the analyzed samples failed to work correctly. While a manual code review could hav
Trendmicro
CVE-2021-25646: Getting Code Execution on Apache Druid
blogs_trendmicro·2021-03-29·CVSS 8.8
CVE-2021-25646 [HIGH] CVE-2021-25646: Getting Code Execution on Apache Druid
## CVE-2021-25646: Getting Code Execution on Apache Druid
How to get code execution on Apache Druid.
By: Trend Micro Research Mar 29, 2021 Read time: ( words)
Save to Folio
In this excerpt of a Trend Micro Vulnerability Research Service vulnerability report, Pengsu Cheng and Prosenjit Sinha of the Trend Micro Research Team detail a recent code execution vulnerability in the Apache Druid database. The bug was originally discovered and reported by Litch1 from the Security Team of Alibaba Cloud. The following is a portion of their write-up covering CVE-2021-25646, with a few minimal modifications.
Apache Druid is a high-performance, modern, real-time analytic database. Druid is designed for workflows where fast ad-hoc analytics, instant data visibility, or high concurrency are required.
Trendmicro
CVE-2021-25646: Getting Code Execution on Apache Druid
blogs_trendmicro·2021-03-29·CVSS 8.8
CVE-2021-25646 [HIGH] CVE-2021-25646: Getting Code Execution on Apache Druid
# CVE-2021-25646: Getting Code Execution on Apache Druid
How to get code execution on Apache Druid.
By: Trend Micro Research
2021/03/29
Read time: ( words)
Save to Folio
In this excerpt of a Trend Micro Vulnerability Research Service vulnerability report, Pengsu Cheng and Prosenjit Sinha of the Trend Micro Research Team detail a recent code execution vulnerability in the Apache Druid database. The bug was originally discovered and reported by Litch1 from the Security Team of Alibaba Cloud. The following is a portion of their write-up covering CVE-2021-25646, with a few minimal modifications.
Apache Druid is a high-performance, modern, real-time analytic database. Druid is designed for workflows where fast ad-hoc analytics, instant data visibility, or high concurrency are required. Dr
Trendmicro
CVE-2021-25646: Getting Code Execution on Apache Druid
blogs_trendmicro·2021-03-29·CVSS 8.8
CVE-2021-25646 [HIGH] CVE-2021-25646: Getting Code Execution on Apache Druid
## CVE-2021-25646: Getting Code Execution on Apache Druid
How to get code execution on Apache Druid.
By: Trend Micro Research 2021/03/29 Read time: ( words)
Save to Folio
In this excerpt of a Trend Micro Vulnerability Research Service vulnerability report, Pengsu Cheng and Prosenjit Sinha of the Trend Micro Research Team detail a recent code execution vulnerability in the Apache Druid database. The bug was originally discovered and reported by Litch1 from the Security Team of Alibaba Cloud. The following is a portion of their write-up covering CVE-2021-25646, with a few minimal modifications.
Apache Druid is a high-performance, modern, real-time analytic database. Druid is designed for workflows where fast ad-hoc analytics, instant data visibility, or high concurrency are required. Dr
Greynoiseio
Malicious Tag Roundup (January 2022)
blogs_greynoiseio
Malicious Tag Roundup (January 2022)
CVE Disclosure Early Warning Get an early warning when traffic spikes indicate a high likelihood of new disclosures
Compromised Asset Detection Find out immediately if an asset communicates with a malicious IP address
Vulnerability Prioritization Get real-time insight into active exploitation trends to better understand risk and severity
SOC Efficiency Filter out noisy, low priority and false-positive alerts from mass internet scanners
Incident Investigation Add context to incidents to speed the determinations of scope and timelines
Threat Hunting Quickly identify anomalous behavior and enrich your threat hunting campaigns
Why GreyNoise
CVE Disclosure Early Warning Get an early warning when traffic spikes indicate a high likelihood of new disclosures
Compromised Asset Detection Fin
arXiv
Cybersecurity AI Benchmark (CAIBench): A Meta-Benchmark for Evaluating Cybersecurity AI Agents
arxiv_fulltext·2025-10-28
Cybersecurity AI Benchmark (CAIBench): A Meta-Benchmark for Evaluating Cybersecurity AI Agents
-1em
## Abstract
Cybersecurity spans multiple interconnected domains, complicating the development of meaningful, labor-relevant benchmarks. Existing benchmarks assess isolated skills rather than integrated performance. We find that pre-trained knowledge of cybersecurity in LLMs does not imply attack and defense abilities, revealing a gap between knowledge and capability. To address this limitation, we present the Cybersecurity AI Benchmark (CAIBench), a modular meta-benchmark framework that allows evaluating LLM models and agents across offensive and defensive cybersecurity domains, taking a step towards meaningfully measuring their labor-relevance. CAIBench integrates five evaluation categories, covering over 10,000 instances: Jeopardy-style CTFs, Attack and Defense CTFs, Cyber Range e
arXiv
ML-FEED: Machine Learning Framework for Efficient Exploit Detection
arxiv_fulltext·2023-03-06
ML-FEED: Machine Learning Framework for Efficient Exploit Detection
## Abstract
Machine learning (ML)-based methods have recently become attractive for detecting security vulnerability
exploits. Unfortunately, state-of-the-art ML models like long short-term memories (LSTMs) and
transformers incur significant computation overheads. This overhead makes it infeasible to deploy them in
real-time environments. We propose a novel ML-based exploit detection model, ML-FEED, that enables
highly efficient inference without sacrificing performance.
We develop a novel automated technique to extract
vulnerability patterns from the Common Weakness Enumeration (CWE) and Common Vulnerabilities and Exposures (CVE)
databases. This feature enables ML-FEED to be aware of the latest cyber weaknesses.
Second, it is not based on the traditional approach of classifying sequences
http://packetstormsecurity.com/files/162345/Apache-Druid-0.20.0-Remote-Command-Execution.htmlhttp://www.openwall.com/lists/oss-security/2021/01/29/6https://lists.apache.org/thread.html/r04fa1ba93599487c95a8497044d37f8c02a439bfcf92b4567bfb7c8f%40%3Ccommits.druid.apache.org%3Ehttps://lists.apache.org/thread.html/r121abe8014d381943b63c60615149d40bde9dc1c868bcee90d0d0848%40%3Ccommits.druid.apache.org%3Ehttps://lists.apache.org/thread.html/r20e0c3b10ae2c05a3aad40f1476713c45bdefc32c920b9986b941d8f%40%3Cannounce.apache.org%3Ehttps://lists.apache.org/thread.html/r443e2916c612fbd119839c0fc0729327d6031913a75081adac5b43ad%40%3Cdev.druid.apache.org%3Ehttps://lists.apache.org/thread.html/r4f84b542417ea46202867c0a8b3eaf3b4cfed30e09174a52122ba210%40%3Ccommits.druid.apache.org%3Ehttps://lists.apache.org/thread.html/r5ef625076982aee7d23c23f07717e626b73f421fba5154d1e4de15e1%40%3Ccommits.druid.apache.org%3Ehttps://lists.apache.org/thread.html/r64431c2b97209f566b5dff92415e7afba0ed3bfab4695ebaa8a62e5d%40%3Cdev.druid.apache.org%3Ehttps://lists.apache.org/thread.html/r7dff4790e7a5c697fc0360adf11f5aeb31cd6ad80644fffee690673c%40%3Ccommits.druid.apache.org%3Ehttps://lists.apache.org/thread.html/r87aa94e28dd21ee2252d30c63f01ab9cb5474ee5bdd98dd8d7d734aa%40%3Ccommits.druid.apache.org%3Ehttps://lists.apache.org/thread.html/ra4225912f501016bc5e0ac44e14b8d6779173a3a1dc7baacaabcc9ba%40%3Ccommits.druid.apache.org%3Ehttps://lists.apache.org/thread.html/rc167d5e57f3120578718a7a458ce3e73b3830ac4efbb1b085bd06b92%40%3Cdev.druid.apache.org%3Ehttps://lists.apache.org/thread.html/rea9436a4063927a567d698431ddae55e760c3f876c22ac5b9813685f%40%3Ccommits.druid.apache.org%3Ehttps://lists.apache.org/thread.html/rfda8a3aa6ac06a80c5cbfdeae0fc85f88a5984e32ea05e6dda46f866%40%3Cdev.druid.apache.org%3Ehttps://lists.apache.org/thread.html/rfeb775822cd3baef1595b60f6860f5ca849eb1903236483f3297bd5c%40%3Ccommits.druid.apache.org%3Ehttp://packetstormsecurity.com/files/162345/Apache-Druid-0.20.0-Remote-Command-Execution.htmlhttp://www.openwall.com/lists/oss-security/2021/01/29/6https://lists.apache.org/thread.html/r04fa1ba93599487c95a8497044d37f8c02a439bfcf92b4567bfb7c8f%40%3Ccommits.druid.apache.org%3Ehttps://lists.apache.org/thread.html/r121abe8014d381943b63c60615149d40bde9dc1c868bcee90d0d0848%40%3Ccommits.druid.apache.org%3Ehttps://lists.apache.org/thread.html/r20e0c3b10ae2c05a3aad40f1476713c45bdefc32c920b9986b941d8f%40%3Cannounce.apache.org%3Ehttps://lists.apache.org/thread.html/r443e2916c612fbd119839c0fc0729327d6031913a75081adac5b43ad%40%3Cdev.druid.apache.org%3Ehttps://lists.apache.org/thread.html/r4f84b542417ea46202867c0a8b3eaf3b4cfed30e09174a52122ba210%40%3Ccommits.druid.apache.org%3Ehttps://lists.apache.org/thread.html/r5ef625076982aee7d23c23f07717e626b73f421fba5154d1e4de15e1%40%3Ccommits.druid.apache.org%3Ehttps://lists.apache.org/thread.html/r64431c2b97209f566b5dff92415e7afba0ed3bfab4695ebaa8a62e5d%40%3Cdev.druid.apache.org%3Ehttps://lists.apache.org/thread.html/r7dff4790e7a5c697fc0360adf11f5aeb31cd6ad80644fffee690673c%40%3Ccommits.druid.apache.org%3Ehttps://lists.apache.org/thread.html/r87aa94e28dd21ee2252d30c63f01ab9cb5474ee5bdd98dd8d7d734aa%40%3Ccommits.druid.apache.org%3Ehttps://lists.apache.org/thread.html/ra4225912f501016bc5e0ac44e14b8d6779173a3a1dc7baacaabcc9ba%40%3Ccommits.druid.apache.org%3Ehttps://lists.apache.org/thread.html/rc167d5e57f3120578718a7a458ce3e73b3830ac4efbb1b085bd06b92%40%3Cdev.druid.apache.org%3Ehttps://lists.apache.org/thread.html/rea9436a4063927a567d698431ddae55e760c3f876c22ac5b9813685f%40%3Ccommits.druid.apache.org%3Ehttps://lists.apache.org/thread.html/rfda8a3aa6ac06a80c5cbfdeae0fc85f88a5984e32ea05e6dda46f866%40%3Cdev.druid.apache.org%3Ehttps://lists.apache.org/thread.html/rfeb775822cd3baef1595b60f6860f5ca849eb1903236483f3297bd5c%40%3Ccommits.druid.apache.org%3E
2021-01-29
Published
Exploited in the wild