viktor-h-tech/microsoft-sentinel-entra-id-detection

GitHub: viktor-h-tech/microsoft-sentinel-entra-id-detection

一个用于在 Microsoft Sentinel 中检测 Entra ID 失败登录的 SIEM 实验室项目。

Stars: 1 | Forks: 0

# Microsoft Sentinel – Entra ID 失败登录检测 ## 项目概述 本项目演示了如何部署和配置 **Microsoft Sentinel(SIEM)**,以利用 **Microsoft Entra ID(Azure AD)** 登录日志检测基于凭据的攻击行为。创建了一个自定义的 **KQL** 分析规则,用于在定义的时间窗口内识别多次失败的登录尝试,并按照 **SOC 分析员** 的工作流程生成安全事件。 本实验验证了端到端的 SIEM 功能,从日志摄取到事件创建和调查。 ## 架构 Microsoft Entra ID ↓ 诊断设置 ↓ 日志分析工作区 ↓ Microsoft Sentinel ↓ 自定义 KQL 分析规则 ↓ 安全事件 ## 使用的技术 - Microsoft Azure - Microsoft Sentinel(SIEM / SOAR) - Microsoft Entra ID(Azure AD) - 日志分析工作区 - Kusto 查询语言(KQL) ## 环境准备 ### 租户和订阅验证 在部署前已验证正确的 Azure 租户和订阅上下文。 ![租户验证](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/c7fb0100ce214759.png) ### 基于角色的访问控制(RBAC) 授予订阅范围的“参与者”权限,以启用 Sentinel 资源部署。 ![RBAC 参与者角色](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/c13c48ac9e214800.png) ### 日志分析工作区部署 创建专用的日志分析工作区以存储安全遥测数据。 ![已部署日志分析工作区](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/8fa7ca30a2214801.png) ### Microsoft Sentinel 启用 在工作区上启用 Microsoft Sentinel。 ![工作区上已启用 Sentinel](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/38a921b50e214802.png) ## 日志摄取配置 ### Entra ID 解决方案部署 部署 Sentinel 的 Entra ID 监控所需解决方案。 ![已部署 Entra ID 解决方案](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/4d852c03b4214803.png) ### 诊断设置 配置 Entra ID 诊断设置,将“登录日志”和“审核日志”转发到 Sentinel。 ![Entra ID 诊断设置](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/3cbe138b53214804.png) ### 日志摄取验证 确认已成功摄取 Entra ID 登录日志。 ``` SigninLogs | take 5 ``` ![登录日志查询结果](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/12c04891b7214807.png) ## 分析规则 – 检测工程 ### 检测目标 检测来自同一用户和 IP 地址在短时间内多次失败的 Entra ID 登录尝试,指示潜在的暴力破解或凭据填充活动。 ### KQL 检测逻辑 ``` SigninLogs | where TimeGenerated > ago(30m) | where ResultType != 0 | summarize FailedAttempts = count() by UserPrincipalName, IPAddress, bin(TimeGenerated, 10m) | where FailedAttempts >= 3 ``` ### 分析规则配置 - 规则类型:计划查询 - 严重性:中 - MITRE ATT&CK 战术: - 凭据访问 - 初始访问 - 计划:每 5 分钟运行一次 - 事件创建:已启用 ![分析规则配置](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/fbfade1dc2214808.png) ![分析规则 KQL](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/0bf8d60ceb214809.png) ### 实体映射 已启用实体映射以丰富调查上下文: - 账户 → 用户主体名称 - IP 地址 → IPAddress ![实体映射配置](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/52348c2158214811.png) ### 事件设置 配置分析规则以从警报创建事件。 ![事件创建设置](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/da2a630013214814.png) ### 规则启用 确认分析规则状态为“已启用”。 ![分析规则已启用](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/f966f77fa0214817.png) ## 事件生成与调查 使用非特权测试账户模拟重复的失败身份验证尝试。该分析规则成功生成了 Microsoft Sentinel 事件,验证了检测逻辑和 SIEM 功能。 ![已生成 Sentinel 事件](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/7a52098baa214822.png) ## 展示的关键技能 - SIEM 部署与配置 - 身份日志摄取与验证 - KQL 查询编写与优化 - 检测工程 - Azure RBAC 故障排除 - SOC 风格事件调查 - Microsoft Sentinel 分析规则调优 ## 经验教训 - Microsoft Sentinel 分析规则是基于计划的,而非实时触发 - 明确的 KQL 时间过滤对性能至关重要 - Sentinel 托管身份需要正确的 RBAC 权限 - 检测测试应使用非管理账户以避免账户锁定 ## 后续改进 - 使用 Logic Apps 添加 SOAR 自动化 - 扩展检测以包含有风险登录 - 构建 Sentinel 工作簿用于可视化 - 集成 Microsoft Defender 遥测数据 ## 作者 Viktor Huynh Microsoft Sentinel SIEM 实验项目 ## 免责声明 本项目在受控的实验室环境中完成,仅用于教育和作品集目的。生产环境中的检测阈值和配置应根据实际情况进行调整。
标签:AMSI绕过, Azure, Azure AD, KQL, Kusto 查询语言, Log Analytics Workspace, Microsoft Entra ID, Microsoft Sentinel, RBAC, SOAR, 凭证攻击, 分析规则, 多次失败尝试, 失败登录, 威胁检测, 安全事件, 安全告警, 安全运营, 扫描框架, 日志采集, 角色访问控制, 诊断设置