Nrichmon01/azure-sentinel-soc-lab

GitHub: Nrichmon01/azure-sentinel-soc-lab

在 Azure 中部署 Microsoft Sentinel 作为云原生 SIEM,通过 KQL 检测规则和 SOC 分诊流程实现身份日志的威胁检测与事件响应。

Stars: 0 | Forks: 0

# Microsoft Sentinel SIEM 部署与 SOC 警报分诊 ![Azure](https://img.shields.io/badge/Azure-Microsoft%20Sentinel-0078D4?logo=microsoftazure) ![KQL](https://img.shields.io/badge/Language-KQL-blue) ![状态](https://img.shields.io/badge/Status-Complete-brightgreen) 一个实操性的云安全实验室,在 Azure 中将 Microsoft Sentinel 部署为 SIEM,连接真实的身份日志源,编写 KQL 检测规则,并对实时数据执行 SOC 风格的警报分诊。 ## 架构 ![架构图](https://static.pigsec.cn/wp-content/uploads/repos/2026/06/8df5d526bf050225.png) ## 技术栈 | 工具 | 用途 | |---|---| | Microsoft Sentinel | SIEM & SOAR 平台 | | Microsoft Entra ID | 身份日志源 | | Log Analytics Workspace | 日志存储和查询 | | KQL | 检测规则编写和调查 | | Azure Portal | 基础设施配置 | ## 构建内容 ### 阶段 1 — 基础设施设置 - 资源组 `cyberlab-rg` 配置在 UK South - Log Analytics Workspace `cyberlab-law` 已部署 - 启用了 Microsoft Sentinel 免费试用版(10 GB/天,2026 年 7 月 14 日过期) ### 阶段 2 — 检测工程 - 从 Content Hub 安装了 Microsoft Entra ID 解决方案(73 个分析规则、1 个连接器、3 个工作簿) - 连接了 Audit Logs 和 Non-Interactive Sign-in Logs - 编写并保存了两个 KQL 检测查询: - `failed-signins-by-ip.kql` — 通过按 IP 对失败登录进行分组来检测暴力破解 - `impossible-travel.kql` — 检测 60 分钟内从不同位置的登录 - 启用了两个分析规则: - 针对暴力破解 Azure Portal 的攻击(中等,T1110) - 用户账户的异常登录位置(中等,T1078) ### 阶段 3 — SOC 分诊 - 确认真实日志数据正在流入:来自 `154.161.xxx.xxx` (GH) 的 301 个登录事件 - 暴力破解规则触发,并端到端调查了事件 - 事件被归类为 Benign Positive — 活动追溯到分析师的实验室会话 - 制作了完整的分诊运行手册和事件报告 ## 仓库结构 ``` azure-sentinel-soc-lab/ ├── README.md ├── architecture/ │ └── architecture-diagram.png ├── docs/ │ ├── project-brief.md │ ├── soc-triage-runbook.md │ └── incident-report.md ├── images/ │ ├── 01-cyberlab-rg-created.png │ ├── 02-cyberlab-law-deployed.png │ ├── 03-sentinel-activated.png │ ├── 04-entra-id-connector-connected.png │ ├── 05-logs-flowing.png │ ├── 06-kql-query1-results.png │ ├── 07-kql-query2-results.png │ └── 08-analytics-rules-enabled.png └── queries/ ├── failed-signins-by-ip.kql └── impossible-travel.kql ``` ## 限制和说明 - Entra ID 免费层不包括 P1/P2 — 无法使用完整的登录日志字段 - `SigninLogs` 数据在 7 天内老化;原始结果保存在 `images/` 中 - `AuditLogs` 连接器已配置,但在免费层上的摄入速度较慢 - 在公开仓库的所有截图中,源 IP 被隐匿为 `154.161.xxx.xxx` - Sentinel 免费试用版于 2026 年 7 月 14 日过期 ## 文档 - [项目简介](docs/project-brief.md) - [SOC 分诊运行手册](docs/soc-triage-runbook.md) - [事件报告 IR-2026-001](docs/incident-report.md) *NexaCore Technologies 是用于作品集展示目的的虚构公司名称。*
标签:AMSI绕过, Azure, KQL, Microsoft Sentinel, 威胁检测, 安全运营, 扫描框架, 红队行动