kyle21pixel/soc-detection-lab

GitHub: kyle21pixel/soc-detection-lab

基于 Wazuh SIEM 和 Active Directory 环境的蓝队检测实验室,提供映射 MITRE ATT&CK 的自定义检测规则与完整的攻击模拟验证流程。

Stars: 0 | Forks: 0

# 🛡️ SOC 检测实验室 ![Wazuh](https://img.shields.io/badge/SIEM-Wazuh-005792?style=flat-square&logo=wazuh&logoColor=white) ![Sysmon](https://img.shields.io/badge/Endpoint-Sysmon-5E5E5E?style=flat-square&logo=microsoft&logoColor=white) ![MITRE ATT&CK](https://img.shields.io/badge/Mapped%20to-MITRE%20ATT%26CK-C1121C?style=flat-square) ![Detection as Code](https://img.shields.io/badge/Detection-as%20Code-success?style=flat-square) 一个建立在我的 [Active Directory 家庭实验室](https://github.com/kyle21pixel/active-directory-homelab) 基础上的**蓝队检测实验室**。Wazuh SIEM 负责接收来自域内的 Windows 安全日志和 Sysmon 日志,并且一套**自定义检测规则** 会对真实的攻击者行为发出警报 —— 每条规则都配有触发它的攻击方法、在实验室中安全重现该攻击的方式,以及它的 MITRE ATT&CK 映射。 ## 🗺️ 架构 ``` graph LR subgraph DOMAIN["AD Homelab — kylelab.local"] DC01["🖥️ DC01
Security Event Log
(4624/4625/4740/4769...)"] CLIENT01["💻 CLIENT01
Sysmon"] CLIENT02["💻 CLIENT02
Sysmon"] end subgraph SIEM["Wazuh SIEM — 192.168.10.20"] MGR["Wazuh Manager
+ custom rules/decoders"] IDX["Wazuh Indexer"] DASH["Wazuh Dashboard"] end DC01 -->|"Wazuh agent"| MGR CLIENT01 -->|"Wazuh agent"| MGR CLIENT02 -->|"Wazuh agent"| MGR MGR --> IDX --> DASH ATTACKER["🎯 Attacker box
(Kali / CLIENT02)"] -.->|"simulated attacks"| DOMAIN ``` | 主机 | 角色 | IP | |---|---|---| | **wazuh** | Wazuh 4.x 一体化 (manager, indexer, dashboard) | `192.168.10.20` | | **DC01 / CLIENT01 / CLIENT02** | 转发 Security + Sysmon 日志的 Wazuh agents | 来自 [AD 实验室](https://github.com/kyle21pixel/active-directory-homelab) | | **攻击者** | 用于安全生成攻击的 Kali 虚拟机 (或配置了工具的 CLIENT02) | `192.168.10.50` | ## 🎯 本实验室中的检测 每项检测在 [`detections/`](detections/) 中都有完整的说明,并在 [`rules/local_rules.xml`](rules/local_rules.xml) 中配有相应的规则。 | # | 检测项 | 技术 | MITRE ATT&CK | 严重程度 | |---|---|---|---|---| | 1 | [密码喷洒](detections/01-password-spray.md) | 大量账户,少数密码,单一来源 | [T1110.003](https://attack.mitre.org/techniques/T1110/003/) | 高 | | 2 | [Kerberoasting](detections/02-kerberoasting.md) | 使用 RC4 加密的大量 TGS 请求 | [T1558.003](https://attack.mitre.org/techniques/T1558/003/) | 高 | | 3 | [特权组更改](detections/03-privileged-group-change.md) | 用户被添加到 Domain/Enterprise Admins | [T1098](https://attack.mitre.org/techniques/T1098/) | 严重 | | 4 | [可疑的 PowerShell](detections/04-suspicious-powershell.md) | 编码 / 下载启动命令行 | [T1059.001](https://attack.mitre.org/techniques/T1059/001/) | 高 | | 5 | [账户锁定风暴](detections/05-account-lockout.md) | 频繁的 4740 事件 (喷洒附带结果或错误凭据) | [T1110](https://attack.mitre.org/techniques/T1110/) | 中 | ## 📚 构建指南 | # | 指南 | 涵盖内容 | |---|---|---| | 1 | [部署 Wazuh](docs/01-deploy-wazuh.md) | 一体化安装,首次登录,资源规划 | | 2 | [注册 agents](docs/02-enrol-agents.md) | 在 DC + 客户端上安装 agents,转发 Sysmon | | 3 | [调整 Windows 审核](docs/03-windows-audit-policy.md) | 高级审核策略配置,确保生成正确的事件 | | 4 | [编写自定义规则](docs/04-custom-rules.md) | Wazuh decoders/rules 的工作原理;检测机制剖析 | | 5 | [攻击模拟与验证](docs/05-attack-simulation.md) | 安全触发每种攻击并确认警报是否生效 | ## 🔁 每项检测的记录方式 [`detections/`](detections/) 中的每个文件都遵循相同的分析报告结构: 1. **攻击是什么** 以及为什么它很重要 2. **遥测数据** — 它生成的确切事件 ID / 字段 3. **检测逻辑** — Wazuh 规则,逐行解释 4. **模拟它** — *仅在实验室中* 触发它的复制粘贴步骤 5. **验证** — 警报触发时的样子 6. **调优说明** — 如何减少误报 7. **响应** — SOC 分析师如何处理该警报 ## ⚠️ 道德与范围 这里展示的每一种技术都**仅在我拥有的隔离家庭实验室内的机器上执行**,目的是为了构建和验证防御措施。本仓库中的任何内容都不会针对我不控制的系统。包含攻击步骤是为了确保检测结果是可重现和可验证的 —— 最终交付物是*检测*本身,而不是攻击方法。 ## 🔮 路线图 - [ ] 将每项检测映射到 MITRE ATT&CK Navigator 层 (覆盖率热力图) - [ ] 为每条规则添加 Sigma 格式版本以提升可移植性 - [ ] 主动响应:在确认发生喷洒后自动禁用账户 (与 [ITOpsKit](https://github.com/kyle21pixel/ITOpsKit) 结合) - [ ] 将警报发送到电子邮件 / Discord webhook **作者:** Kyle — [@kyle21pixel](https://github.com/kyle21pixel)。互联实验室的一部分:[AD 家庭实验室](https://github.com/kyle21pixel/active-directory-homelab) (构建) → [ITOpsKit](https://github.com/kyle21pixel/ITOpsKit) (自动化) → **SOC 检测实验室** (防御)。
标签:Active Directory, AMSI绕过, Plaso, Terraform 安全, Wazuh, Web报告查看器, 威胁检测, 安全运营, 扫描框架, 模拟器