Bikash-Raya/Sentinel-Defender-XDR-SOC-Incident-Response-lab

GitHub: Bikash-Raya/Sentinel-Defender-XDR-SOC-Incident-Response-lab

该项目是一个 SOC 安全运营实验,通过模拟 RDP 暴力破解攻击,演示如何使用 Microsoft Sentinel 和 Defender XDR 完成端到端的威胁检测与事件响应。

Stars: 0 | Forks: 0

# Sentinel-Defender-XDR-SOC-Incident-Response-lab
# 🛡️ Microsoft Sentinel & Defender XDR – SOC Incident Response Lab:暴力破解攻击检测与响应 ![Domain](https://img.shields.io/badge/SIEM-Microsoft%20Sentinel-blue?style=for-the-badge) ![Platform](https://img.shields.io/badge/Portal-Microsoft%20Defender%20XDR-red?style=for-the-badge) ![Type](https://img.shields.io/badge/Type-SOC%20Incident%20Response%20Lab-darkblue?style=for-the-badge) **编写者:** Bikash Raya **项目类型:** SOC Lab — 暴力破解攻击模拟、检测、分析规则创建与 Incident Response
## 📁 仓库结构 | 文件 | 描述 | | --- | --- | | [Sentinel_Defender_SOC_IR_Lab_Report.pdf](./Sentinel_Defender_SOC_IR_Lab_Report.pdf) | 包含所有截图的完整实验报告 | | README.md | 项目概述 | ## 📋 概述 本仓库记录了一个完整的**端到端 SOC Incident Response 实验**,使用了 **Microsoft Sentinel** 和 **Microsoft Defender XDR 统一门户**。该实验模拟了一个真实的攻击场景:一台暴露在互联网上的 Windows Server 遭到 RDP 暴力破解攻击,通过自定义 KQL 分析规则进行检测,并使用 Defender XDR 的 Incident 管理工作流进行响应。 该实验涵盖: * 🏗️ 在 Azure 中部署了 **Resource Group、Windows Server VM (Web01)** 和 **Ubuntu Attacker VM** * 🔓 在 Web01 上配置了故意存在漏洞的 **NSG inbound 规则 (Any/Any/* )** 并**禁用了 Windows 防火墙** * 📊 创建了 **Log Analytics Workspace (Bik-SOC-Lab)** 并接入了 **Microsoft Sentinel** * 🔌 安装了 **Windows Security Events via AMA** 数据连接器并创建了 **Data Collection Rule** * ⚔️ 从 AttackerVM 使用 **Hydra** 和真实的密码列表发起了 **RDP 暴力破解攻击** * 🔍 在 **Sentinel 中使用 KQL** 验证了攻击日志(事件 ID 4624/4625 — 失败 + 成功的登录) * 🚨 创建了映射到 **MITRE ATT&CK T1110** 的**计划分析规则**,该规则生成了一个高危 Incident * 🛡️ 在 **Defender XDR 统一门户**中调查了 **Incident ID 18** * 📋 执行了模拟的**Incident Response**:分配任务、记录调查过程并关闭 Incident ## 🛠️ 使用的技术 * Microsoft Azure (Azure Portal) * Microsoft Sentinel * Microsoft Defender XDR (security.microsoft.com — 统一门户) * Microsoft Defender for Cloud * Log Analytics Workspace * Windows Security Events via AMA (Data Connector) * Data Collection Rule (DCR) * KQL (Kusto Query Language) * Hydra v9.5 (THC-Hydra — RDP 暴力破解工具) * Azure Bastion (安全的 VM 访问) * MITRE ATT&CK Framework * Ubuntu 24.04 LTS (Attacker VM) * Windows Server 2022 Datacenter (Victim VM) ## 🧪 实验环境 | 组件 | 详情 | | --- | --- | | Resource Group | Security-BikSecOps (Australia East) | | Victim VM | Web01 -- Windows Server 2022 Datacenter (Standard D2s v3) | | Victim 公网 IP | 20.5.48.127 | | NSG Inbound 规则 | Any / Any / * / Allow (优先级 100 -- 名称: Dangerous) | | Windows 防火墙 | 在 Web01 上禁用 (公共 + 私有配置文件) | | Attacker VM | AttackerVM -- Ubuntu 24.04 LTS | | 攻击工具 | Hydra v9.5 (THC-Hydra) | | Log Analytics Workspace | Bik-SOC-Lab (australiaeast) | | SIEM | Microsoft Sentinel | | 统一门户 | Microsoft Defender XDR | | 数据连接器 | Windows Security Events via AMA | | DCR 名称 | SecurityEventsforAzureVM -- All Events | ## 🌐 实验架构 ``` [AttackerVM -- Ubuntu 24.04] │ │ Hydra RDP Brute Force │ rdp://20.5.48.127:3389 ▼ [Web01 -- Windows Server 2022] NSG: Any/Any/* Allow Firewall: OFF Public IP: 20.5.48.127 │ │ Windows Security Events (4624, 4625) │ via AMA + DCR (SecurityEventsforAzureVM) ▼ [Log Analytics Workspace -- Bik-SOC-Lab] │ │ Microsoft Sentinel ingests logs ▼ [Microsoft Sentinel -- Analytics Rule] Rule: Successful Brute Force Attempt KQL: EventID 4624/4625 | summarize by TargetUserName, IpAddress Trigger: FailedAttempts >= 7 AND SuccessAttempts > 0 AND SuccessTime > LastFailed │ │ Alert --> Incident Created ▼ [Microsoft Defender XDR -- Incident ID 18] Severity: High | Status: Active --> Resolved Entity: bikashsoc1 | IP: 20.70.152.193 Task: User/Host Review | Classification: Expected Activity ``` ## 🔬 实验阶段 ### 阶段 1 — 基础设施部署 - 创建了 Resource Group **Security-BikSecOps** (Australia East) - 部署了 **Web01** (Windows Server 2022),并配置了故意不安全的 NSG: - Inbound 规则: 源 Any / 目标 Any / 端口 * / 操作 Allow / 名称: **Dangerous** - RDP 登录到 Web01 并**禁用了 Windows Defender 防火墙** (公共 + 私有配置文件) - 在同一个 Resource Group 中部署了 **AttackerVM** (Ubuntu 24.04 LTS) ### 阶段 2 — Sentinel & Log Analytics 设置 - 创建了 Log Analytics Workspace:**Bik-SOC-Lab** (australiaeast) - 将 Bik-SOC-Lab 添加到 **Microsoft Sentinel** - 从 Content Hub 安装了 **Windows Security Events** 解决方案 - 创建了 Data Collection Rule **SecurityEventsforAzureVM**: - 资源: Web01 - 事件: All Events ### 阶段 3 — 攻击模拟 (Hydra RDP 暴力破解) 通过 **Azure Bastion** 连接到 AttackerVM,然后执行: ``` sudo apt update sudo apt install hydra ``` 下载了常见的密码列表,并添加了正确的密码以保证登录成功: ``` wget raw.githubusercontent.com/danielmiessler/SecLists/refs/heads/master/Passwords/Common-Credentials/2025-199_most_used_passwords.txt nano 2025-199_most_used_passwords.txt # added: bikashsoc123 ``` 发起 RDP 暴力破解攻击: ``` hydra -l bikashsoc1 -P 2025-199_most_used_passwords.txt -t 1 -W 5 rdp://20.5.48.127:3389 ``` **结果:** `1 of 1 target successfully completed. 1 valid password found` — 尝试了 199 次,密码被破解。 ### 阶段 4 — KQL 威胁狩猎与日志验证 在 Sentinel 日志中使用 KQL 验证了攻击: ``` SecurityEvent | where TimeGenerated > ago(15m) | where EventID in (4624, 4625) | summarize FailedAttempts = countif(EventID == 4625), SuccessAttempts = countif(EventID == 4624), FirstFailure = minif(TimeGenerated, EventID == 4625), LastSuccess = maxif(TimeGenerated, EventID == 4624) by TargetUserName, IpAddress | where FailedAttempts >= 7 | where SuccessAttempts > 0 | where LastSuccess > FirstFailure ``` **查询结果:** | TargetUserName | IpAddress | FailedAttempts | SuccessAttempts | FirstFailure | LastSuccess | | --- | --- | --- | --- | --- | --- | | bikashsoc1 | 20.70.152.193 | 7 | 1 | 6/22/2026 1:53:24 AM | 6/22/2026 1:54:00 AM | ✅ 日志中确认了暴力破解攻击 — 同一个 IP 先进行了 7 次失败的登录,随后进行了 1 次成功的登录。 ### 阶段 5 — 分析检测规则 在 Microsoft Sentinel 中(通过 Defender XDR 统一门户)创建了一个**计划分析规则**: | 属性 | 值 | | --- | --- | | 规则名称 | Successful Brute Force Attempt | | 严重性 | High | | 状态 | Enabled | | MITRE Tactics | Credential Access \| Initial Access | | MITRE Techniques | T1110 \| T1110.001 \| T1110.003 \| T1078 | | 运行频率 | Every 5 minutes | | 回溯周期 | Last 5 hours | | 实体映射 | Account: TargetUserName \| IP: IpAddress | **分析规则 KQL:** ``` SecurityEvent | where EventID in (4624, 4625) | where LogonType in (2, 3, 10) | summarize FailedAttempts = countif(EventID == 4625), SuccessAttempts = countif(EventID == 4624), LastFailed = maxif(TimeGenerated, EventID == 4625), SuccessTime = maxif(TimeGenerated, EventID == 4624) by TargetUserName, IpAddress | where FailedAttempts >= 5 | where SuccessAttempts > 0 | where SuccessTime > LastFailed | project TargetUserName, IpAddress, FailedAttempts, SuccessAttempts, LastFailed, SuccessTime | order by SuccessTime desc ``` ### 阶段 6 — Incident 检测与响应 (Defender XDR) 在 Microsoft Defender XDR 中自动生成了 **Incident ID 18**: | 属性 | 值 | | --- | --- | | Incident 标题 | Successful Brute Force Attempt involving one user | | 严重性 | 🔴 High | | 状态 | Active → Resolved | | 活动 Alert | 2/2 | | 受影响用户 | bikashsoc1 | | 攻击源 IP | 20.70.151.193 | | 首次活动 | Jun 22, 2026 7:57 AM | | Workspace | Bik-SOC-Lab | **已创建调查任务:** - 任务名称: User / Host Review - 受影响账号: bikashsoc1 (Privileged) - 受影响主机: Web01 (Production / External Facing) **建议的遏制措施:** - 禁用受影响的账号 - 重置账号密码 - 撤销活动的会话 - 封锁源 IP 地址 - 如果确认遭到入侵,隔离受影响的主机 - 如果确认存在恶意活动,升级上报给 DFIR 团队 **Incident 已关闭:** ## 🎯 展示的技能 * Microsoft Sentinel 部署与配置 * Azure VM 部署与 NSG 配置 * Log Analytics Workspace 与 DCR 设置 * Windows Security Events via AMA 数据连接器 * KQL 威胁狩猎 (SecurityEvent 表 — 事件 ID 4624/4625) * 自定义计划分析规则创建 * MITRE ATT&CK Framework 映射 (T1110, T1078) * Microsoft Defender XDR 统一门户 * Incident 分类、调查与响应 * RDP 暴力破解模拟 * Linux CLI 与 Azure Bastion * SOC Tier 1/2 端到端工作流 ## 🎯 关键要点
标签:KQL, Microsoft Defender XDR, Microsoft Sentinel, 免杀技术, 安全实验, 暴力破解检测