saqib-butt2/blackbox-pentesting-infsecos

GitHub: saqib-butt2/blackbox-pentesting-infsecos

针对VulnHub SecOS:1靶机的完整黑盒渗透测试报告,涵盖CSRF利用、内核提权及后渗透全流程。

Stars: 0 | Forks: 0

# 黑盒渗透测试 — SecOS:1 (VulnHub) ## 概述 针对 **SecOS:1**(来自 [VulnHub](https://www.vulnhub.com/entry/secos-1,88/) 的一台故意设计的易受攻击 CTF 机器)进行的全面黑盒渗透测试。目标:模拟一个零 prior knowledge(先验知识)的真实攻击者,并实现 root 级别的权限攻陷,以获取 `/root/flag.txt` 作为证据。 所有测试均在受控的虚拟实验室环境 内进行,作为大学课程的一部分。未针对任何真实系统进行测试。 ## 实验环境 | 机器 | 角色 | IP | |----------------------|-------------------|-----------------| | Kali Linux (saqib85) | 攻击者 | 192.168.122.186 | | SecOS:1 (InfoSecOS) | 主要目标 | 192.168.122.202 | | Ubuntu DVWA | 附加目标 | 192.168.122.51 | | Windows XP | 附加目标 | 192.168.122.6 | - **网络:** NAT — `192.168.122.0/24` - **平台:** Apporto Cloud Lab ## 方法论 遵循 **Hacking Exposed** 框架 (McClure, Scambray & Kurtz, 2003): 1. 信息收集 (Footprinting) 2. 扫描与映射 3. 枚举 4. 漏洞评估 5. 获取访问权限 6. 权限提升 7. 后渗透 -> 窃取 -> 清除痕迹 -> 后门创建 ## 攻击链 | 步骤 | 行动 | 详情 | |------|--------|--------| | 1 | 网络发现 | Nmap · Netdiscover 识别出 192.168.122.202 为目标 | | 2 | 端口扫描 | 端口 22 (OpenSSH 6.6p1) · 端口 8081 (Node.js/Express) | | 3 | Web 枚举 | Gobuster · Dirb · Nikto → 发现 /hint, /change-password, /users, /messages | | 4 | CSRF 利用 | 构造 holidays.html → 发送给管理员 spiderman → 密码被修改为 abc123 | | 5 | 凭证发现 | Spiderman 收件箱中包含 SSH 密码:CrazyPassword! | | 6 | SSH 访问 | 在端口 22 上以 spiderman 身份获取 shell | | 7 | 权限提升 | LinPEAS → 内核 3.13.0-24 → CVE-2015-1328 (OverlayFS) → root shell | | 8 | 攻陷证明 | 获取 /root/flag.txt | | 9 | 后渗透 | 导出 /etc/passwd 和 /etc/shadow · 提取 MongoDB 记录 · 破解 SHA-256 哈希 · 清除日志 · 创建后门用户 + 端口 4444 上的 cron 反向 shell | ## 发现的漏洞 — 共 22 个 | 漏洞 | 严重程度 | CVSS | CVE | |---------------|----------|------|-----| | Ubuntu 14.04 LTS — 生命周期结束 | 严重 | 10.0 | — | | OverlayFS 权限提升 | 严重 | — | CVE-2015-1328 | | OpenSSH 6.6p1 — 过时 / 用户名枚举 | 高 | 7.8 | CVE-2018-15473 | | Node.js 通过 node-serialize 实现 RCE | 高 | 7.5 | — | | /change-password endpoint 上的 CSRF | 高 | — | — | | MongoDB — 无身份验证 | 高 | — | — | | SHA-256 哈希未加盐 | 高 | — | — | | Slowloris DoS | 中 | 5.0 | CVE-2007-6750 | | 缺少 HTTP 安全标头 | 低 | — | — | | ICMP 时间戳泄露 | 低 | 2.1 | — | ## 使用的工具 | 类别 | 工具 | |---|---| | 发现 | Nmap, Netdiscover | | Web 枚举 | Gobuster, Dirb, Nikto | | 漏洞评估 | Nessus Essentials, Searchsploit | | 利用 | Burp Suite, Metasploit | | 权限提升 | LinPEAS, GCC, Exploit-DB 37292.c | | 后渗透 | John the Ripper, Netcat, SSH | | 基础设施 | Apache2 (payload 托管) | ## 仓库文件 | 文件 | 描述 | |---|---| | `README.md` | 此文件 | | `exploit-commands.sh` | 每个阶段的所有命令 | | `csrf-exploit.html` | 修改 spiderman 密码的 CSRF payload | | `user-creation.sh` | 在 Kali 上设置攻击者用户 | ## 建议 1. 在所有更改状态的 endpoint 上添加 **CSRF tokens**;更改密码时需要验证当前密码 2. **修补操作系统和服务** — 升级 Ubuntu、OpenSSH 和 Node.js;应用内核补丁 3. **MongoDB 身份验证** — 强制使用凭证;切勿保持未认证状态 4. **密码哈希** — 将 SHA-256 替换为 Argon2 或带加盐的 bcrypt 5. **SSH 加固** — 禁用密码认证;仅使用基于密钥的认证 6. **HTTP 安全标头** — 添加 X-Frame-Options、X-Content-Type-Options、CSP ## 证据 ### CSRF — 提示页面源码 ![提示页面源码](https://raw.githubusercontent.com/saqib-butt2/blackbox-pentesting-infsecos/main/screenshots/sourcecode%20hint%20fromhint%20page.png) ### CSRF — 确认 spiderman 访问了该链接的 Apache 日志 ![apache 日志](https://raw.githubusercontent.com/saqib-butt2/blackbox-pentesting-infsecos/main/screenshots/log%20confirm%20spiderman%20accessed.png) ### 使用 abc123 登录 spiderman ![spiderman 登录](https://raw.githubusercontent.com/saqib-butt2/blackbox-pentesting-infsecos/main/screenshots/spiderman.%20login%20woth%20abc123.png) ### 以 spiderman 身份进行 SSH 访问 ![ssh 登录](https://raw.githubusercontent.com/saqib-butt2/blackbox-pentesting-infsecos/main/screenshots/ssh%20spiderman%20from%20terminal.png) ### 提取的 MongoDB 记录 ![mongodb](https://raw.githubusercontent.com/saqib-butt2/blackbox-pentesting-infsecos/main/screenshots/mongo%20db.png) ### 创建的后门用户 ![后门用户](https://raw.githubusercontent.com/saqib-butt2/blackbox-pentesting-infsecos/main/screenshots/backdoor%20user.png) ### 已配置的 cron job 反向 shell ![cronjob](https://raw.githubusercontent.com/saqib-butt2/blackbox-pentesting-infsecos/main/screenshots/cronjob.png) ### 已确认 cron job 连接到 Kali ![cronjob 连接](https://raw.githubusercontent.com/saqib-butt2/blackbox-pentesting-infsecos/main/screenshots/cronjob%20connection.png) ## 参考文献 - McClure, S., Scambray, J. and Kurtz, G. (2003) *Hacking Exposed*. McGraw-Hill/Osborne. - VulnHub — https://www.vulnhub.com/entry/secos-1,88/ - Exploit-DB 37292 — https://www.exploit-db.com/exploits/37292 - PEASS-ng LinPEAS — https://github.com/peass-ng/PEASS-ng
标签:AES-256, CISA项目, CSRF利用, CTI, CVE-2015-1328, Dirb, Express, GNU通用公共许可证, LinPEAS, meg, Nikto, Nmap, Node.js, OpenSSH, OverlayFS, SecOS, VulnHub, Web报告查看器, Web渗透, 信息安全, 协议分析, 子域名变形, 密码管理, 插件系统, 攻击链, 本地提权, 权限提升, 渗透测试报告, 漏洞评估, 网络安全, 网络安全审计, 网络枚举, 虚拟驱动器, 跨站请求伪造, 隐私保护, 黑盒渗透测试