Karutun/home-soc-lab
GitHub: Karutun/home-soc-lab
在 Apple Silicon 上基于 Wazuh SIEM 构建的家庭安全运营实验室,完整演练 Blue Team 从部署、日志采集、模拟攻击到告警分析与 MITRE ATT&CK 映射的工作流程。
Stars: 0 | Forks: 0
# 🛡️ 家庭 SOC 实验室 — 在 Apple Silicon (UTM) 上部署 Wazuh SIEM
这是一个从零开始在 MacBook M1 上构建的家庭安全运营中心(SOC)实验室。
该项目演练了 Blue Team 的完整工作周期:部署 SIEM、从端点收集日志、
执行模拟攻击,以及最重要的 —— **检测这些攻击**,
包括分析告警并映射到 MITRE ATT&CK。
## 🎯 项目展示内容
- 在 ARM64 上部署 **Wazuh 4.14**(all-in-one:indexer + server + dashboard)
- 在隔离的虚拟环境中配置 **静态网络** 和网络分段
- 在端点上安装并注册 **Wazuh agent**
- 使用 **Kali Linux** 发起三次攻击并分析 SIEM 的响应:
- SSH brute-force → **已检测** ✅
- Network port scan (nmap) → **未检测** ❌(已知的盲区)
- File tampering(篡改文件) → **已检测** ✅
- 剖析告警、阅读原始日志、使用 **MITRE ATT&CK** 及合规标准(PCI DSS、GDPR、HIPAA、NIST)
- 配置 realtime 模式下的 **File Integrity Monitoring (FIM)**
## 🧩 技术栈
| 组件 | 版本 / 详情 |
|---|---|
| 宿主机 | MacBook Air/Pro M1 (ARM), 8 GB RAM |
| Hypervisor | UTM (QEMU backend) |
| SIEM | Wazuh 4.14.6 (all-in-one) |
| 服务器系统 | Ubuntu Server 22.04.5 LTS (ARM64) |
| 攻击机 | Kali Linux (ARM64) |
| 攻击工具 | hydra, nmap |
## 🗺️ 实验室架构
```
┌──────────────────────────────┐
│ Wazuh Server (Ubuntu) │
│ 192.168.64.7 │ ← SIEM
│ indexer + server + dashboard│
└───────────▲──────────────────┘
│ логи (порт 1514/1515)
│
┌───────────┴──────────┐
│ Kali Linux │
│ 192.168.64.6 │ ← агент + атакующая машина
│ wazuh-agent │
└───────────────────────┘
│
│ атаки (SSH brute-force, nmap, FIM)
└────────────► на Wazuh Server
Сеть лаборатории: 192.168.64.0/24 (UTM Shared Network)
```
## 📚 文档目录
| 文档 | 描述 |
|---|---|
| [docs/00-setup.md](docs/00-setup.md) | 准备工作:UTM、镜像、网络、资源 |
| [docs/01-wazuh-server.md](docs/01-wazuh-server.md) | 安装 Ubuntu 和 Wazuh SIEM |
| [docs/02-agent.md](docs/02-agent.md) | 在 Kali 上安装并注册 agent |
| [docs/03-attacks.md](docs/03-attacks.md) | 三次攻击及检测分析 |
| [docs/04-analysis.md](docs/04-analysis.md) | 结果分析、结论与局限性 |
| [docs/glossary.md](docs/glossary.md) | SOC/SIEM 术语表 |
## 📊 检测结果(摘要)
| 攻击 | MITRE ATT&CK | Wazuh 规则 | 检测情况 |
|---|---|---|---|
| SSH brute-force | T1110 / T1110.001 | 5760 → 5763 (关联) | ✅ 已检测 |
| Port scan (SYN + TCP) | T1046 | — | ❌ 未检测 |
| File tampering | T1565.001 | 554, 550 | ✅ 已检测 |
关于为什么 nmap 未被捕获的详细分析(基于日志的检测的局限性),请参见 [docs/04-analysis.md](docs/04-analysis.md)。
## 🔑 关键结论
1. **SIEM 只能检测到进入日志的内容。** SSH brute-force 和文件篡改会在日志中留下痕迹,很容易被检测到。使用 `-sS`/`-sT` 的网络扫描几乎不会留下日志 —— 要捕获它需要独立的网络传感器(如 Suricata、Zeek)。
2. **关联比单一事件更重要。** 一次失败的登录只是噪音。Wazuh 自动将一系列失败的登录关联为一个高严重级别的“brute force”统一告警(规则 5763)。
3. **FIM 能够从内部捕获攻击者。** 启用 `report_changes` 的 realtime 监控不仅能显示文件被更改的事实,还能提供更改前后的确切内容和哈希值。
## ⚠️ 免责声明
本项目出于教育目的创建。所有攻击均在作者拥有的机器上的隔离虚拟网络中执行。未涉及任何第三方系统。
标签:Wazuh, x64dbg, 安全运营, 扫描框架, 插件系统, 虚拟化实验室, 身份验证强制