vinitlimbachiya/SOC-HomeLab
GitHub: vinitlimbachiya/SOC-HomeLab
一个完全本地化的安全运营中心模拟实验室,通过搭建 SIEM 平台、模拟网络攻击并进行威胁检测与事件响应,帮助安全学习者实践完整的 SOC 工作流程。
Stars: 0 | Forks: 0
# 🔐 SOC 家庭实验室 — 安全运营中心模拟
## 📌 项目概述
本项目完全在本地计算机上使用 VirtualBox 模拟了真实的**安全运营中心 (SOC)** 环境。该实验室涵盖了完整的 SOC 工作流程——从设置监控网络、模拟网络攻击、通过 SIEM 检测威胁,再到编写事件响应报告。
**展示的核心技能:**
- SIEM 部署与日志分析 (Splunk)
- 使用 Kali Linux, Nmap, Metasploit, Hydra 进行攻击模拟
- 威胁检测、告警与关联规则
- 事件响应 (IR) 文档编写
- 网络流量监控与分析
## 🏗️ 实验室架构
```
Internet
│
[pfSense Firewall] ── Network monitor, traffic filtering
│
├── [Kali Linux VM] → Attacker machine (192.168.136.129)
├── [Windows Server VM] → Target/Victim machine (192.168.136.131)
└── [Splunk VM] → SIEM / Log collector (192.168.136.132)
Network: VMware Workstation Pro Host-Only Adapter — 192.168.136.0/24
```
## 🧰 工具与技术
| 类别 | 使用的工具 |
|---|---|
| 虚拟化 | VMWare 7.x |
| 攻击者 OS | Kali Linux 2024 |
| 目标 OS | Windows Server 2012 |
| 防火墙 | pfSense 2.7 |
| SIEM | Splunk Free (Universal Forwarder) |
| 攻击工具 | Nmap, Metasploit, Hydra |
| 监控 | Splunk dashboards, pfSense logs |
| 文档 | Markdown, 事件响应报告模板 |
## 📋 阶段分解
### ✅ 阶段 1 — 环境搭建 (第 1 天)
- 安装 VirtualBox 并在隔离的 Host-Only 网络上配置了 3 台 VM
- 设置 Kali Linux 作为攻击者,Ubuntu Server 作为目标,Splunk VM 作为 SIEM
- 配置 pfSense 防火墙以实现网络分段和流量日志记录
- 使用 `ping` 和 `nmap` 验证了 VM 之间的连通性
**截图:** `screenshots/phase1_network_setup.png`
### ✅ 阶段 2 — Splunk SIEM 部署 (第 2 天)
- 在专用 VM 上安装 Splunk Free
- 在 Ubuntu 目标机上安装 Universal Forwarder,以将日志发送到 Splunk
- 为以下内容创建了自定义仪表板:登录失败、端口扫描、SSH 尝试
- 编写了 SPL (Splunk Search Processing Language) 查询以进行威胁检测
**SPL 查询示例 — 检测端口扫描:**
```
index=main sourcetype=syslog
| stats count by src_ip, dest_port
| where count > 20
| sort -count
```
**截图:** `screenshots/phase2_splunk_dashboard.png`
### ✅ 阶段 3 — 攻击模拟 (第 3 天)
在 Kali Linux 上针对 Ubuntu 目标模拟了以下攻击:
| 攻击类型 | 使用的工具 | 目的 |
|---|---|---|
| 网络侦察 | Nmap | 端口与服务发现 |
| 漏洞扫描 | Nmap NSE scripts | CVE 识别 |
| 漏洞利用 | Metasploit | 获取 shell 访问权限 |
| SSH 暴力破解 | Hydra | 密码攻击模拟 |
**截图:** `screenshots/phase3_attack_simulation.png`
### ✅ 阶段 4 — 威胁检测与事件响应 (第 4 天)
- 配置由日志中检测到的攻击特征触发的 Splunk 警报
- 执行日志关联以映射攻击时间线
- 编写了完整的**事件响应报告**(见 `/reports/IR_Report_001.md`)
- 遵循 NIST 事件响应框架:准备 → 检测 → 遏制 → 根除 → 恢复
**事件响应报告摘要:**
```
Incident ID : IR-2026-001
Date : 8-06-2026
Severity : High
Type : Unauthorized port scan + brute force attempt
Source IP : 192.168.136.129 (Kali VM)
Target IP : 192.168.136.131 (Windows Server VM)
Detection : Splunk alert — SSH brute force rule triggered
Action Taken : IP blocked via pfSense, SSH hardened
```
**截图:** `screenshots/phase4_splunk_alerts.png`
### ✅ 阶段 5 — 文档与报告 (第 5 天)
- 将所有发现记录在结构化的事件响应报告中
- 创建了此 README 以便在 GitHub 上发布
- 在简历的**项目**部分添加了本项目
- 在 LinkedIn 个人资料中链接了 GitHub 仓库
## 📁 仓库结构
```
SOC-HomeLab/
│
├── README.md ← This file
├── screenshots/
│ ├── phase1_network_setup.png
│ ├── phase2_splunk_dashboard.png
│ ├── phase3_attack_simulation.png
│ └── phase4_splunk_alerts.png
│
├── splunk-queries/
│ ├── port_scan_detection.spl
│ ├── brute_force_detection.spl
│ └── failed_login_alert.spl
│
├── reports/
│ └── IR_Report_001.md
│
└── configs/
├── splunk_forwarder_setup.md
└── pfsense_rules.md
```
## 🔍 关键发现与经验教训
1. **Nmap 扫描**会在 Splunk 日志中生成非常明显的特征模式 —— 短时间内来自单一源 IP 的高端口访问量
2. 通过 `/var/log/auth.log` 中的失败登录次数阈值,可以轻松检测到 **SSH 暴力破解**
3. 即使对于内部 VM 到 VM 的流量,**pfSense** 也能提供精细的流量可见性
4. **Splunk 关联规则**非常强大 —— 将 2 个警报(扫描 + 来自同一 IP 的暴力破解)关联起来,可提高真实阳性结果的置信度
## 📄 事件响应报告示例
查看完整报告:[📄 查看完整事件响应报告](./reports/IR_Report_001.md)
## 🚀 如何复现此实验室
1. 安装 VMWare (https://knowledge.broadcom.com/external/article/368667/download-and-license-vmware-desktop-hype.html)
2. 下载 Kali Linux OVA (kali.org/get-kali → Virtual Machines)
3. 下载 Ubuntu Server 22.04 ISO (ubuntu.com)
4. 下载 Splunk Free (splunk.com/en_us/download.html)
5. 在 VirtualBox 网络设置中将所有 VM 设置为 Host-Only Adapter
6. 按照 `/configs/` 文件夹中的说明进行逐阶段设置
## 👤 关于我
**Vinit Limbachiya**
网络安全爱好者 | HackerOne 安全研究员 | SOC 分析师
- 📧 vinitlimbachiya01@gmail.com
- 🔗 [LinkedIn](https://linkedin.com/in/vinitlimbachiya)
- 💻 [GitHub](https://github.com/vinitlimbachiya)
- 🐛 HackerOne — 活跃的安全研究员 (XSS, SQLi, IDOR, CSRF)
## 📜 与此项目相关的认证
- Splunk Core Certified User
- Security Blue Team — Intro to Penetration Testing
- Tech Mahindra — Cyber Security
- IBM — Python 101 for Data Science
*此实验室是作为一个实践项目构建的,旨在展示真实的 SOC 分析师技能,包括威胁监控、SIEM 管理、攻击模拟和事件响应。*
标签:CTI, 安全运营中心, 插件系统, 网络映射, 防御加固, 靶场环境