栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Vulnhub靶场 Corrosion: 2靶机 渗透练习一

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Vulnhub靶场 Corrosion: 2靶机 渗透练习一

目录

一、信息收集

1. 使用 netdiscover 探测目标 ip

2. 使用 nmap 对目标靶机进行端口扫描

3. 80 端口

4. 8080 端口

二、漏洞攻击

三、提权

方法一:base64 模块

方法二:Linux Polkit 权限提升漏洞 CVE-2021-4034

四、总结


前期准备:

靶机地址:Corrosion: 2 ~ VulnHub

kali攻击机ip:192.168.122.128
靶机地址:192.168.122.143

一、信息收集

1. 使用 netdiscover 探测目标 ip

2. 使用 nmap 对目标靶机进行端口扫描

发现开放了22端口(ssh)、80端口(http)和8080端口(http)

 

3. 80 端口

 

访问 80 端口:

很正常的一个页面,没发现什么可利用信息

扫描一下目录:

没发现什么可利用信息

4. 8080 端口

访问 8080 端口:

Tomcat

扫描一下目录:

发现了不少东西,看一下:

/readme.txt

嘿,兰迪!是你的系统管理员。我在服务器上给你留了一个文件,我相信没人会找到的。

还记得使用我给你的密码。

/backup.zip

是个压缩包,unzip 解压一下:

需要密码

暴力破解一下:

-D :使用字典  -p :使用字符串作为初始密码/文件  -u :使用解压缩删除错误的密码

密码:@administrator_hi5

解压后查看一下里面的文件,在 tomcat-users.xml 文件里发现有用户名和密码:

账户:manager    密码:melehifokivai

但是 Tomcat 里没有登陆的地方:

二、漏洞攻击

不过 msf 有个 Tomcat 上传 webshell 的模块,有用户名和密码就可以使用:

修改用户名、密码、目标靶机IP和目标靶机端口:

运行该模块:

输入 shell 后就获得了 Tomcat 用户

查看一下系统文件:

user.txt

获得 flag

note.txt

嘿,兰迪,这是你的系统管理员,希望你今天过得愉快!我只是想让你知道我更改了你对主目录的权限。您暂时无法删除或添加文件。

稍后我将更改这些权限。

下周一见randy!

因为 randy 下的文件不能删除和添加,所以一些关键文件也无法查看。

而 /home/jaye 文件里的文件没有权限查看:

尝试一下切换成 jaye 用户,密码还是用刚猜发现的 manager 密码(melehifokivai) :

登陆成功

发现可以登陆到 jaye 用户,查看一下 /etc/passwd 文件:

发现可以用 ssh 登陆,这样看着有点不方便,ssh 登陆:

发现一些文件,查看一下,发现 Files 文件夹下有个 look 文件:

是系统的 look 命令,look 命令可以越权访问

LFILE=/etc/shadow

./look '' "$LFILE"  (这里的路径是Files下)

​

这里可以直接查看flag:

./look '' /root/root.txt

​

成功!!!芜湖!!!

咳咳,刚才是一个小插曲,咱们继续

使用上面的方法读取 passwd 和 shadow 的文件复制并保存下来:

LFILE=/etc/shadow

./look '' "$LFILE"

​

LFILE=/etc/passwd

./look '' "$LFILE" (第一个''是英文的两个单引号)

 ​

将这两个文件里的内容分别保存到文件里:

​

使用 unshadow 命令生成需要破解的密码:

unshadow passwd shadow > pass.txt

​

用 john 破解一下:

john --wordlist=/usr/share/wordlists/rockyou.txt ./pass.txt  

​

爆破了好长时间,爆出来两个用户:

melehifokivai    (jaye)

07051986randy  (randy)

第一个是已知的,登陆下第二个:

​

三、提权

方法一:base64 模块

查看允许做什么:

​

用户 randy 可以对腐蚀运行以下命令: /usr/bin/python3.8 /home/randy/randombase64.py 查看该文件:

​

发现会以 root 运行这个 python 脚本,用了 base64 模块,查看一下该文件的权限:

​

发现不能更改该文件,但是他会用python程序运行,我们直接在 python 程序 base64 模块里面写入 shell ,先找到 python 中的 base64 脚本:

ls -la base*

​

发现 base64.py 有权限,写入 shell ,vim 用不了,用的 nano 编辑器:

先写入 os 模块

​

写入 shell :

​

ctrl + O 保存    ctrl + x 退出

因为改的是 python3.8 ,所以 python3.8 运行 randaombase64.py 脚本:

​

提权成功!!!获得了 flag !!!

​

方法二:Linux Polkit 权限提升漏洞 CVE-2021-4034

假设方法一不存在,我们此时还在 jaye 界面,查看当前服务器版本:

​

发现当前版本可以使用 Linux Polkit 权限提升漏洞 CVE-2021-4034:

​

下载测试文件到 tmp 目录下,下载地址 https://github.com/arthepsy/CVE-2021-4034:

​

测试文件解压缩:

​

对解压缩文件编译:

​

将编译的文件再次压缩:

​

上传文件:

python -m http.server 80

​

进入 tmp 下载文件:

​

解压缩下载文件 :

​

执行下载文件:

​

提权成功!!!获取 flag !!!

​

四、总结

本靶机是个经典tomcat靶机

1. 目录扫描工具:gobuster

2. zip 破解工具:fcrackzip

3. tomcat 后台 getshell:msf 中 tomcat 上传模块

4. suid 提权:look 利用 suid 权限读取 /etc/shadow 、/etc/passwd

5. 用户密码破解工具:unshadow

6. sudo 提权:利用 sudo 执行 py 脚本提权

7. 漏洞提权: Linux Polkit 权限提升漏洞 CVE-2021-4034

参考的大神:

Vulnhub 靶场 CORROSION: 2 - sainet - 博客园

(1条消息) vulnhub靶场——CORROSION:2_Czheisenberg的博客-CSDN博客

参考的链接:

【漏洞通告】Linux Polkit 权限提升漏洞CVE-2021-4034 (qq.com)

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1010083.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号