Zabbix 程式碼執行漏洞復現 /zabbix-cve_2017_2824

環境: 利用docker將vulfocus環境pull到本地搭建

 

漏洞描述: Zabbix 是由Alexei Vladishev 開發的一種網路監視、管理系統,基於 Server-Client 架構。其Server端 trapper command 功能存在一處程式碼執行漏洞,特定的數據包可造成命令注入,進而遠程執行程式碼。攻擊者可以從一個Zabbix proxy發起請求,從而觸發漏洞。

漏洞原理:    zabbix 調用script腳本時,沒有對IP地址過濾,導致在註冊host的數據包中的ip地址後面可以跟分號+命令的方式執行命令。

 

影響範圍: zabbix 2.4.x

    zabbix 3.0.x < 3.0.4

 

1.使用docker下載vulfocus

`docker pull vulfocus/zabbix-cve_2017_2824:latest`

 

 2.查看本地鏡像並運行漏洞環境

docker images

docker run -d -P vulfocus/zabbix-cve_2017_2824

-d:將鏡像掛起後台運行

-P:將鏡像需要開啟的埠隨機映射到這台伺服器的公網IP埠上

 

 3.訪問ip:port成功搭建,使用默認管理員帳號密碼進入後台

用戶名:admin

密碼:zabbix

 

 

 

 4.選擇configguration 選擇action添加一個自動註冊

 

 

 

 

 操作完成之後就開啟了自動註冊功能

 利用poc測試是否存在漏洞

poc鏈接://github.com/listenquiet/cve-2017-2824-reverse-shell

放到kali下執行

首先修改poc.py里的埠

 

 然後直接使用命令執行

python poc.py  目標IP

 

 回到伺服器,進入docker容器查看/tmp目錄下是否有success目錄

docker exec -it DockerName /bin/bash

-i: 互動式操作。

-t:打開終端

/bin/bash:放在鏡像名後的是命令,這裡我們希望有個互動式 Shell,因此用的是 /bin/bash。

 

 

存在該文件夾證明存在漏洞,下面利用exp.py反彈shell

同樣需要更改exp.py裡面的埠數據

該腳本執行成功會在/tmp目錄下創建一個1.sh的文件,文件內容為反彈shell,因此需要更改列表數據exps裡面的數據

 

 

 試了n次一直超時這裡可以改一下腳本里的超時時間,這樣基本一次就成功

 

 

然後伺服器開啟監聽

 

 成功反彈

 

Tags: