shamillshaanuh/Obscura
GitHub: shamillshaanuh/Obscura
Obscura 是一个 Boot-to-Root 风格的多阶段脆弱 Linux CTF 靶机,模拟企业级渗透测试全生命周期,供安全学习者在隔离环境中练习从侦察到提权的完整攻击链。
Stars: 0 | Forks: 0
# Obscura:一个多阶段的脆弱 CTF 实验环境
## 概述
**Obscura** 是一台定制的 Boot-to-Root (B2R) 脆弱 Linux 机器,旨在模拟企业环境中常见的真实攻击路径。该实验环境提供了涵盖完整渗透测试生命周期的实践经验,包括侦察、Web 漏洞利用、横向移动和 Linux 提权。
## 实验架构
| 组件 | 详情 |
| --------------------------- | ------------------------- |
| **目标操作系统** | Ubuntu Server 22.04.5 LTS |
| **部署平台** | Oracle VirtualBox |
| **网络配置** | 隔离的 NAT 网络 |
| **暴露的服务** | Apache2, PHP, OpenSSH |
## 目标
此挑战的目标是通过推进多个攻击阶段来成功攻陷目标系统。参与者必须:
* 获得目标机器的初始访问权限。
* 从被攻陷的 Web 服务跳板到标准用户账户。
* 提权以获取 **root** 访问权限。
* 在整个渗透过程中捕获所有 **三个隐藏 flag**。
# 攻击生命周期
### 1. 侦察
对目标 Web 应用程序进行枚举,以识别隐藏目录、endpoint 和暴露的资源,同时区分真实的攻击路径和故意设置的干扰项。
### 2. 初始访问
利用隐写术隐藏的信息获取管理员凭据,然后利用任意文件上传漏洞实现 **Remote Code Execution (RCE)**。
### 3. 横向移动
以低权限服务账户身份枚举被攻陷的系统,以发现内部凭据并过渡到标准用户账户。
### 4. 提权
识别并利用配置不当的特权系统二进制文件,获取 root shell 并完成挑战。
# 安装说明
## 前置条件
* Oracle VirtualBox
* 渗透测试发行版(例如 Kali Linux)
* 两台虚拟机连接到同一个 NAT 网络
## 安装
1. 下载提供的 **Obscura** 虚拟机镜像(.OVA 或 .ISO)。
2. 将虚拟机导入 Oracle VirtualBox。
3. 配置 VM 网络适配器,使其使用与攻击者机器相同的 **NAT 网络**。
4. 启动虚拟机。
5. 使用以下工具发现目标 IP 地址:
* `netdiscover`
* `arp-scan`
# 攻略(剧透)
## 步骤 1 — 目录枚举
使用 **Gobuster** 枚举隐藏目录。
发现的 endpoint:
* `/secret/`
* `/admin/`
## 步骤 2 — 隐写术
* 下载托管在 `/secret/` 下的图片。
* 使用 **ExifTool** 检查图片元数据。
* 在图片注释中找到嵌入的 MD5 hash。
* 破解 hash 以恢复管理员密码。
## 步骤 3 — Remote Code Execution
* 身份验证至:
`/admin/dashboard.php`
* 可以在页面源码中找到 **Flag 1**。
* 访问隐藏的上传功能。
* 使用双扩展名 payload 绕过上传限制,例如:
`shell.jpg.php`
* 以 **www-data** 用户身份执行任意命令。
## 步骤 4 — 横向移动
检查以下文件:
`/var/www/html/admin/notes.txt`
该文件包含明文 SSH 凭据。
使用它们通过 SSH 进行身份验证,并从以下位置获取 **Flag 2**:
`/home/dev/user.txt`
## 步骤 5 — 提权
运行:
`sudo -l`
**NOPASSWD** 配置错误允许执行:
`/usr/bin/find`
使用以下命令逃逸到 root shell:
`sudo find . -exec /bin/bash \; -quit`
最后,从以下位置检索 **Flag 3**:
`/root/root.txt`
# 免责声明
本实验环境仅为教育目的和授权渗透测试练习而开发。旨在帮助学习者在受控环境中了解常见的安全漏洞和利用技术。
在未获得明确授权的情况下,请**不要**将本实验中展示的知识或技术用于任何系统或网络。作者对任何滥用本材料的行为概不负责。
标签:CSV导出, CTF靶场, PE 加载器, 协议分析, 安全实验环境, 权限提升