edwardjgriggs/soc-detection-lab
GitHub: edwardjgriggs/soc-detection-lab
一个自建的蓝队检测工程实验室,通过 Microsoft Sentinel 与 Wazuh 生成真实遥测数据并在检测规则投入生产前进行验证。
Stars: 0 | Forks: 0
# SOC 检测实验室




## 建立此实验室的目的
你无法为从未见过的遥测数据编写出可靠的检测规则。这个实验室为我提供了一个安全的环境来生成这些遥测数据:记录真实的登录事件、模拟攻击者行为、观察日志中记录的内容,并在信任检测规则之前确认它能成功触发。
它是我 [detection-engineering](https://github.com/edwardjgriggs/detection-engineering) 仓库的试验场。那里的每一条规则都是首先在这里进行验证的。
## 架构概览
简而言之:一台运行 Ubuntu 的迷你 PC 托管了我的容器化蓝队技术栈。Wazuh 从实验室机器收集主机和端点遥测数据。一个 Microsoft 365 实验租户将 Entra ID 身份日志流式传输到 Microsoft Sentinel 工作区。云 SIEM 和本地 HIDS 都服务于同一个工作流:生成活动、观察日志、构建和调整检测规则。对实验室的远程访问通过私有 mesh VPN 处理,因此没有任何内容暴露在公共互联网上。
```
flowchart LR
subgraph cloud[Microsoft Cloud]
EID[Entra ID sign-in and audit logs]
SENT[Microsoft Sentinel workspace]
EID --> SENT
end
subgraph host[Ubuntu Lab Host]
DOCK[Docker and Portainer]
WAZUH[Wazuh manager]
DOCK --> WAZUH
end
subgraph endpoints[Lab Endpoints]
WIN[Windows test VM]
LNX[Linux test VM]
end
WIN -->|agent telemetry| WAZUH
LNX -->|agent telemetry| WAZUH
ATTACK[Simulated attacker activity] -->|failed logins, spray| EID
ATTACK -->|host actions| WIN
SENT --> DETECT[Detection development and tuning]
WAZUH --> DETECT
```
## 组件
| 层级 | 工具 | 角色 |
|-------|---------|------|
| 主机 | Beelink 迷你 PC,Ubuntu Server | 常开型实验室主机 |
| 运行时 | Docker,Portainer | 蓝队技术栈的容器管理 |
| HIDS | Wazuh(manager 和 agents) | 主机和端点遥测、文件完整性、日志分析 |
| 云 SIEM | Microsoft Sentinel | 基于 KQL 的身份检测开发 |
| 身份 | Microsoft 365 / Entra ID 实验租户 | 登录和审计遥测源 |
| 访问 | Mesh VPN | 私有远程访问,无公共网络暴露 |
## 日志来源及其提供的信息
- **Entra ID 登录日志:** 身份验证结果、结果代码、源 IP。每项身份检测(暴力破解、密码喷洒、不可能旅行)的基础。
- **Entra ID 审计日志:** 目录更改、角色分配、应用授权同意。
- **Wazuh agent 遥测:** 实验室端点上的进程活动、身份验证事件和文件完整性更改。
## 我如何生成测试遥测数据
检测规则的好坏取决于你用来测试它的活动。我通过两种方式生成遥测数据:
1. **受控的手动活动。** 从单个主机对多个实验室账户进行失败登录以重现密码喷洒,进行角色更改以触发审计检测,以及针对我拥有的账户进行类似的安全重现。
2. **Atomic Red Team(路线图)。** 将各个 ATT&CK 技术映射到可重复的测试中,以便每个检测都有已知的触发条件和记录的预期结果。
所有活动均针对仅限实验室的身份和机器生成。此实验室中的任何操作都不会触及生产或第三方系统。
## 这展示了什么
- 从头建立并端到端运行 SIEM 和 HIDS,而不仅仅是查询预先构建好的系统
- 理解从原始日志到调整好的检测规则的全过程
- 拥有 Microsoft Sentinel、Entra ID、Wazuh、Docker 和 Linux 管理的实操经验
- 在信任检测规则之前对其进行验证的严谨性
## 脱敏说明
此仓库仅记录架构和工作流。它不包含租户标识符、内部 IP 地址、VPN 密钥、与真实基础设施关联的主机名或凭据。任何重现此实验室的人都应提供自己的信息。
## 关于
由 Edward Griggs 构建和运行。系统管理员和有志向的检测工程师,拥有联邦政府合同承包背景,已获得 Security+ 认证,正在考取 SC-200。
[LinkedIn](https://www.linkedin.com/in/edward-griggs/) · [GitHub](https://github.com/edwardjgriggs)
标签:Microsoft Sentinel, Wazuh, 安全运营, 实验室环境, 扫描框架, 请求拦截