thyme87l-star/identity-attack-killchain-workshop

GitHub: thyme87l-star/identity-attack-killchain-workshop

围绕五种现代身份攻击手法提供 34 条 Sentinel KQL 检测规则的实战演练教材,帮助安全团队快速建立身份攻击检测与响应能力。

Stars: 0 | Forks: 0

# Identity 攻击杀伤链(Kill Chain)实战演练 这是一个实战演练教材仓库,旨在通过体验 5 种最新的 Identity 攻击手法,掌握使用 KQL(Kusto Query Language)开发 Sentinel 检测规则的技能。 ## 概述 | 阶段 | 攻击手法 | MITRE ATT&CK | 检测规则数 | |---|---|---|---| | 1 | Device Code Phishing | T1528, T1566.002, T1550.001 | 2 | | 2 | OAuth Consent Phishing | T1566.002, T1528, T1098.001 | 5 | | 3 | AiTM Phishing (Evilginx) | T1557, T1539, T1550.004 | 5 | | 4 | Teams Impersonation + LOLBins | T1566.003, T1219, T1574, T1021.006, T1567 | 17 | | 5 | Phone Link MFA Hijack | T1111, T1005, T1041, T1048.003 | 5 | | **合计** | | **18 项 MITRE 技术** | **34 条规则** | ## 仓库结构 ``` ├── README.md ├── LICENSE ├── kql/ │ ├── phase1-device-code/ # Phase 1: Device Code Phishing(2 ルール) │ ├── phase2-oauth-consent/ # Phase 2: OAuth Consent Phishing(5 ルール) │ ├── phase3-aitm/ # Phase 3: AiTM Phishing(5 ルール) │ ├── phase4-teams-lolbins/ # Phase 4: Teams + LOLBins(3 ルール ※代表) │ └── phase5-phone-link/ # Phase 5: Phone Link MFA Hijack(5 ルール) ├── deploy/ │ └── deploy_all_rules.py # Sentinel 一括デプロイスクリプト └── docs/ └── mitre-mapping.md # MITRE ATT&CK マッピング ``` ## 快速入门 ### 1. 检查检测规则 每个阶段的文件夹中都存放有 KQL 文件。可以直接在 Log Analytics 工作区中执行。 ``` # 例: Phase 1 の Device Code サインイン検知 cat kql/phase1-device-code/device-code-signin.kql ``` ### 2. 批量部署到 Sentinel ``` # Azure 認証 az login # 全ルールを一括デプロイ python deploy/deploy_all_rules.py \ --subscription-id \ --resource-group \ --workspace-name ``` ### 3. 部署后的验证 1. 前往 **Sentinel** → **分析** → **活动规则**,确认所有规则均已启用(Enabled) 2. 对每个规则执行“立即运行”,确认 KQL 能够正常解析 3. 在 1-2 周的调优期间检查 FP(误报) ## 前提条件 - 已启用 Microsoft Sentinel 的 Log Analytics 工作区 - 已启用以下数据连接器: - Microsoft Entra ID (SigninLogs, AuditLogs) - Microsoft Defender for Endpoint (DeviceProcessEvents, DeviceNetworkEvents, DeviceEvents, DeviceFileEvents) - Microsoft Graph Activity Logs (MicrosoftGraphActivityLogs) - Log Analytics Contributor 及以上的 RBAC 权限 - Python 3.8+ 及 `azure-identity`、`requests` 包(用于部署脚本) ## 自定义设置 各 KQL 文件可以直接作为 Sentinel Analytics Rule 使用,但请根据实际环境对以下内容进行自定义调整: - **排除列表**:合法的 CLI 工具名称、已知的应用 ID 等 - **阈值**:检测灵敏度(例如:探测命令的爆发频率) - **严重性**:根据环境的风险特征进行调整 ## MITRE ATT&CK 覆盖范围 本实战演练的检测规则涵盖了以下 MITRE ATT&CK 战术: - **Initial Access(初始访问)**:T1566.002, T1566.003 - **Credential Access(凭证访问)**:T1528, T1539, T1111 - **Defense Evasion(防御规避)**:T1550.001, T1550.004, T1036, T1574 - **Discovery(发现)**:T1087.004 - **Collection(收集)**:T1114.002, T1005 - **Lateral Movement(横向移动)**:T1021.006, T1219 - **Exfiltration(数据外发)**:T1567, T1048.003, T1041 - **Persistence(持久化)**:T1098.001 详情请参阅 [docs/mitre-mapping.md](docs/mitre-mapping.md)。 ## 许可证 MIT License — 详情请参阅 [LICENSE](LICENSE)。 ## 注意事项 - 本仓库中的攻击手法和脚本仅供**教育与验证目的**使用 - 未经授权对第三方系统执行攻击手法是法律所禁止的 - 检测规则请务必在测试环境中验证后,再部署到生产环境
标签:AiTM, API接口, Azure, Cloudflare, Evilginx, HTTP工具, IAM, Identity Attack Kill Chain, KQL, Kusto Query Language, LOLBins, MFA Bypass, Microsoft Sentinel, MITRE ATT&CK, OAuth钓鱼, Object Callbacks, SecOps, 中间人钓鱼, 云安全架构, 协议分析, 多因素身份验证绕过, 安全运营, 扫描框架, 攻击与防御, 攻杀链, 数据窃取, 权限提升, 横向移动, 特权提升, 编程规范, 网络安全, 网络钓鱼, 自动化部署, 设备代码钓鱼, 身份与访问管理, 逆向工具, 隐私保护