researchthesitch/KQL-threat-hunting-queries

GitHub: researchthesitch/KQL-threat-hunting-queries

一套针对 Microsoft Entra ID 身份层威胁的 KQL 狩猎查询入门包,映射 MITRE ATT&CK,可在 Sentinel 和 Defender XDR 中直接运行。

Stars: 0 | Forks: 0

# Entra ID 威胁狩猎包 一个小型且不断扩充的 KQL 狩猎查询集合,用于检测 Microsoft Entra ID (Azure AD) 中的身份层威胁,可在 **Microsoft Sentinel** 中运行,并适用于 **Microsoft Defender XDR Advanced Hunting**。 每个查询都映射到 MITRE ATT&CK,包含对其揭示的攻击者行为的描述、常见的误报来源,以及对相关 Microsoft 底层文档的参考。 ## 为什么会有这个项目 身份是新的边界。近年来,绝大多数云泄露事件都是从针对 Entra ID 的凭据滥用、非法同意授权或 token 盗窃开始的——而非传统的端点或网络入侵。这个仓库是一个用于狩猎这些威胁的学习笔记和入门工具包。 ## 覆盖范围 | # | 检测项 | MITRE ATT&CK | 数据源 | |---|---|---|---| | 01 | 来自单一 IP 的密码喷洒 | T1110.003 | `SigninLogs` | | 02 | Identity Protection 标记的风险登录 | T1078.004 | `SigninLogs` | | 03 | 非法 OAuth 同意授权 | T1528 | `AuditLogs` | | 04 | 特权角色分配 | T1098.003 / T1078.004 | `AuditLogs` | | 05 | 成功的旧版身份验证 | T1078.004 | `SigninLogs` | | 06 | 被其他用户篡改的 MFA 方法 | T1556.006 | `AuditLogs` | ## 已验证的检测 密码喷洒检测已在 Entra ID 实验租户中进行了端到端的演练——包括测试用户、预置的来自单一 IP 的失败登录,以及返回预期攻击特征的查询。 ![Password spray detection firing on lab telemetry](https://static.pigsec.cn/wp-content/uploads/repos/2026/05/0fecd4802c050408.png) 结果:2 个独立用户成为目标,在同一小时窗口内,来自一个源 IP 的 7 次失败身份验证尝试——与 T1110.003 (暴力破解:密码喷洒) 匹配。源 IP 和租户域名已做涂敏处理。 ## 环境要求 您可以在几分钟内构建一个免费的实验环境: 1. 注册 [免费 Azure 层级](https://azure.microsoft.com/free/)。 2. 在 Microsoft Entra ID 中,配置**诊断设置**以将 `SignInLogs` 和 `AuditLogs` 发送到 Log Analytics 工作区。 3. 在您的 `*.onmicrosoft.com` 域中创建一些测试用户并预置登录活动。 4. 将 `/queries` 中的任何查询粘贴到工作区的 Logs 边栏选项卡中并运行。 ## 如何使用 - 从默认的回溯窗口开始;根据您的环境调整 `ago(...)` 和阈值。 - 将每个结果视为一条*线索*,而不是最终定论——在升级处理之前,请阅读每个查询头中的误报说明部分。 - 对于 Defender XDR Advanced Hunting,表名会有所不同(如 `AADSignInEventsBeta`、`IdentityLogonEvents` 等),但字段语义几乎完全相同;迁移过程非常直观。 ## 仓库结构 ``` entra-id-hunting-pack/ ├── README.md ├── LICENSE ├── CONTRIBUTING.md └── queries/ ├── 01-password-spray.kql ├── 02-risky-signins.kql ├── 03-illicit-oauth-consent.kql ├── 04-privileged-role-assignment.kql ├── 05-legacy-auth-success.kql └── 06-mfa-method-tampering.kql ``` ## 路线图 - 用于与 SIEM 无关部署的 Sigma 规则等价物 - 在每个 Sentinel 查询旁边提供 Defender XDR Advanced Hunting 变体 - Conditional Access 策略即代码的配套仓库 - 自动化调整 Notebook(Jupyter + KQL magic),用于为每个租户确定基线阈值 ## 许可证 MIT — 详见 [LICENSE](LICENSE)。
标签:AMSI绕过, Azure AD, Cloudflare, KQL查询, Kusto, Microsoft Defender XDR, Microsoft Entra ID, Microsoft Sentinel, MITRE ATT&CK, OAuth滥用, 威胁检测, 安全开发生命周期, 安全运营, 密码喷洒, 扫描框架, 数据查询, 特权升级, 网络安全, 身份安全, 隐私保护