x-lga/live-security-operations-lab
GitHub: x-lga/live-security-operations-lab
一个基于完全开源工具构建的可运行 SOC 实验室,通过模拟真实攻击并触发完整检测与响应流程,帮助安全从业者获得实战级的安全运营经验。
Stars: 0 | Forks: 0
# 🛡️ 实时安全运营实验室
## 📌 项目简介
这不是一堆笔记的堆砌。这也不是一份速查表。
这是一个**可运行的 SOC 实验室**,你可以克隆、部署并运营它——在这里会模拟真实的攻击,触发真实的告警,执行真实的 playbook,并生成真实的报告。每个组件都直接映射到 CySA+ 的领域以及实际安全团队的运营方式。
完全使用**免费的开源工具**构建。可以在普通硬件或免费层级的云 VM 上运行。文档详尽到初级分析师也能跟着操作,而高级工程师也会对其架构表示赞赏。
## 🎯 适用人群
| 人群 | 本项目的帮助 |
|---|---|
| **CySA+ 考生** | 在实时环境中查看每个考试领域的实际运作 |
| **初级 SOC 分析师** | 借鉴 playbook、检测规则和 runbook 用于实际工作 |
| **Homelab 搭建者** | 通过 fork 并在数小时内启动一套完整的检测技术栈 |
| **招聘经理** | 一个展示运营安全思维的实用实验室 |
| **蓝队成员** | 可直接拿来修改使用的 Wazuh + Suricata + Zeek 配置 |
## 🗺️ 项目架构
```
┌─────────────────────────────────────────────────────────────────┐
│ ATTACK SIMULATION LAYER │
│ Kali Linux VM ──► Metasploitable / DVWA │
└───────────────────────────────┬─────────────────────────────────┘
│ (malicious traffic)
┌───────────────────────────────▼─────────────────────────────────┐
│ DETECTION LAYER │
│ Suricata (IDS/IPS) + Zeek (network analysis) │
│ Wazuh Agent (endpoint telemetry on all VMs) │
└───────────────────────────────┬─────────────────────────────────┘
│ (logs + alerts)
┌───────────────────────────────▼─────────────────────────────────┐
│ SIEM / ANALYSIS LAYER │
│ Wazuh Manager + OpenSearch / Kibana Dashboard │
│ TheHive (case management) + Cortex (auto-enrichment) │
└───────────────────────────────┬─────────────────────────────────┘
│ (enriched incidents)
┌───────────────────────────────▼─────────────────────────────────┐
│ VULNERABILITY MANAGEMENT LAYER │
│ OpenVAS / Greenbone + CVSS scoring scripts │
│ Dependency-Track (SCA/SBOM) │
└───────────────────────────────┬─────────────────────────────────┘
│ (findings)
┌───────────────────────────────▼─────────────────────────────────┐
│ INCIDENT RESPONSE & REPORTING LAYER │
│ Playbooks (this repo) + Velociraptor (DFIR) │
│ Automated IR reports generated per incident │
└─────────────────────────────────────────────────────────────────┘
```
## 📂 仓库结构
```
cysa-lab/
│
├── README.md ← You are here
│
├── lab-setup/
│ ├── 00-prerequisites.md ← Hardware, software, accounts needed
│ ├── 01-network-design.md ← Virtual network topology
│ ├── 02-wazuh-setup.md ← SIEM installation and config
│ ├── 03-suricata-setup.md ← IDS/IPS installation and config
│ ├── 04-zeek-setup.md ← Network analysis setup
│ ├── 05-thehive-cortex-setup.md ← Case management setup
│ ├── 06-openvas-setup.md ← Vulnerability scanner setup
│ ├── 07-velociraptor-setup.md ← DFIR tool setup
│ └── 08-attack-simulation.md ← Kali + target VM setup
│
├── detection-rules/
│ ├── README.md
│ ├── suricata/
│ │ ├── local.rules ← Custom Suricata rules
│ │ └── rules-explained.md
│ ├── wazuh/
│ │ ├── custom-rules.xml ← Custom Wazuh detection rules
│ │ ├── custom-decoders.xml ← Log decoders
│ │ └── rules-explained.md
│ └── sigma/
│ ├── lateral-movement.yml
│ ├── persistence.yml
│ └── exfiltration.yml
│
├── playbooks/
│ ├── README.md
│ ├── IR-001-malware-infection.md
│ ├── IR-002-brute-force-attack.md
│ ├── IR-003-port-scan-recon.md
│ ├── IR-004-data-exfiltration.md
│ ├── IR-005-web-application-attack.md
│ ├── IR-006-insider-threat.md
│ └── IR-007-ransomware.md
│
├── vulnerability-management/
│ ├── README.md
│ ├── scan-procedures.md
│ ├── cvss-scoring-guide.md
│ ├── remediation-workflow.md
│ ├── sample-reports/
│ │ └── vuln-report-template.md
│ └── scripts/
│ ├── cvss-calculator.py
│ └── vuln-report-generator.py
│
├── threat-hunting/
│ ├── README.md
│ ├── hunting-methodology.md
│ ├── hypothesis-library.md
│ ├── hunt-001-beaconing.md
│ ├── hunt-002-lateral-movement.md
│ ├── hunt-003-credential-dumping.md
│ └── hunt-004-c2-communication.md
│
├── incident-response/
│ ├── README.md
│ ├── ir-plan.md
│ ├── communication-templates.md
│ ├── chain-of-custody.md
│ ├── evidence-collection.md
│ └── post-incident-report-template.md
│
├── scripts/
│ ├── README.md
│ ├── setup/
│ │ ├── install-wazuh-agent.sh
│ │ ├── install-suricata.sh
│ │ └── install-zeek.sh
│ ├── detection/
│ │ ├── ioc-checker.py
│ │ ├── log-analyzer.sh
│ │ └── baseline-checker.py
│ └── reporting/
│ ├── generate-ir-report.py
│ └── weekly-summary.sh
│
├── docs/
│ ├── cysa-domain-mapping.md
│ ├── mitre-attack-mapping.md
│ ├── tool-glossary.md
│ └── references.md
│
└── dashboards/
├── README.md
├── wazuh-dashboard-config.json
└── screenshots/
└── (add your screenshots here)
```
## 🔧 工具栈(100% 免费)
| 工具 | 用途 | 成本 |
|---|---|---|
| **VirtualBox / VMware Workstation Player** | Hypervisor | 免费 |
| **Ubuntu Server 22.04 LTS** | 服务器基础 OS | 免费 |
| **Kali Linux** | 攻击模拟 | 免费 |
| **Metasploitable 2/3** | 故意留有漏洞的靶机 | 免费 |
| **DVWA** | 易受攻击的 Web 应用 | 免费 |
| **Wazuh** | SIEM + EDR + 日志管理 | 免费(开源) |
| **Suricata** | 网络 IDS/IPS | 免费(开源) |
| **Zeek** | 网络分析框架 | 免费(开源) |
| **TheHive** | 安全事件案例管理 | 免费(社区版) |
| **Cortex** | 告警富化 + 自动化 | 免费(开源) |
| **OpenVAS / Greenbone** | 漏洞扫描器 | 免费(社区版) |
| **Velociraptor** | 数字取证 + IR | 免费(开源) |
| **Dependency-Track** | SCA / SBOM 分析 | 免费(开源) |
| **MISP** | 威胁情报平台 | 免费(开源) |
| **Sigma** | 便携式检测规则 | 免费(开源) |
## 🚀 快速开始
### 最低硬件要求
| 资源 | 最低配置 | 推荐配置 |
|---|---|---|
| RAM | 16 GB | 32 GB |
| CPU | 4 核 | 8 核 |
| 硬盘 | 100 GB 可用空间 | 200 GB SSD |
| OS | Windows 10/11 或 Linux | 首选 Linux 宿主机 |
### 第 1 步 - 克隆仓库
```
git clone https://github.com/x-lga/live-security-operations-lab.git
cd live-security-operations-lab
```
### 第 2 步 - 设置网络
按照 [`lab-setup/01-network-design.md`](lab-setup/01-network-design.md) 创建你的隔离虚拟网络。
### 第 3 步 - 部署 SIEM
按照 [`lab-setup/02-wazuh-setup.md`](lab-setup/02-wazuh-setup.md) 操作——这是你实验室的大脑。
### 第 4 步 - 部署检测工具
按照指南 03 和 04 配置 Suricata 和 Zeek。
### 第 5 步 - 部署靶机并进行攻击
按照 [`lab-setup/08-attack-simulation.md`](lab-setup/08-attack-simulation.md) 启动 Metasploitable 并运行你的第一次攻击。
### 第 6 步 - 查看告警触发
打开你的 Wazuh 仪表板。从 Kali 运行 nmap 扫描。观察告警的出现。
## 🎓 CySA+ 领域覆盖
| CySA+ 领域 | 本实验室的覆盖情况 |
|---|---|
| **安全运营 (33%)** | Wazuh SIEM、Suricata IDS、IOA/IOC 检测、告警分诊 |
| **漏洞管理 (30%)** | OpenVAS 扫描、CVSS 评分、修复工作流 |
| **事件响应 (20%)** | TheHive 案例管理、IR playbook、Velociraptor DFIR |
| **报告与沟通 (17%)** | IR 报告模板、仪表板、利益相关者沟通 |
## 🧠 MITRE ATT&CK 覆盖
本实验室检测并模拟了以下各方面的技术:
- **侦察** - nmap、Nikto Web 扫描
- **初始访问** - 针对 Metasploitable 的 Metasploit 攻击
- **执行** - 通过 Web 漏洞进行远程代码执行
- **持久化** - Cron job 后门、SSH 密钥注入
- **权限提升** - SUID 滥用、sudo 配置错误
- **防御规避** - 清除日志、混淆命令
- **凭证访问** - Hydra 暴力破解、凭证窃取
- **横向移动** - Pass-the-hash 模拟
- **收集与外发** - 分阶段的文件传输、DNS 隧道模拟
- **命令与控制** - Meterpreter C2 会话
查看 [`docs/mitre-attack-mapping.md`](docs/mitre-attack-mapping.md) 获取完整的映射关系。
## 📖 如何使用本仓库
### 如果你正在备考 CySA+
1. 首先阅读领域映射文档
2. 按照设置指南的顺序搭建实验室
3. 针对每个章节主题,找到对应的实验室组件并运行它
4. 将 playbook 作为学习材料——每一个步骤都映射到考试目标
### 如果你是一名初级 SOC 分析师
1. 获取 playbooks 文件夹——根据你所在组织的需求进行调整
2. 获取检测规则——将它们导入到你的 SIEM 中
3. 在每个轮班开始时,将威胁狩猎假设作为你的起点
### 如果你正在搭建 homelab
1. 从上到下按照 `/lab-setup/` 中的设置指南进行操作
2. 所有内容都有确切的命令记录——没有任何假设
## ⚠️ 法律与道德声明
## 📜 许可证
MIT 许可证——随意使用、fork 并在此基础上构建。
*用心打造。这个仓库里的每一个文件之所以存在,都是因为有人曾经需要通过艰难的摸索来学习它。*
标签:GPT, Metaprompt, 安全培训, 安全实验环境, 安全编排与自动化响应, 安全运营中心, 应用安全, 漏洞管理, 网络映射, 越狱测试, 逆向工具