penelopeeckhar/mitre-attack-detection-lab

GitHub: penelopeeckhar/mitre-attack-detection-lab

这是一个基于虚拟化环境的MITRE ATT&CK攻击模拟平台,用于测试和优化安全检测能力。

Stars: 0 | Forks: 0

# 🛡️ MITRE ATT&CK 模拟平台 ## 🎯 目标 - 构建一个完全虚拟化且隔离的 Active Directory 实验室 - 模拟覆盖 **7 个 MITRE ATT&CK 战术** 的 **21 项原子化技术** - 通过 Sysmon + Winlogbeat 将所有日志集中到 **Splunk** - 使用 **Sigma 规则** 衡量检测率并填补检测盲点 ## 🏗️ 实验室架构 ``` Réseau interne isolé — AttackLab (192.168.10.0/24) Switch virtuel ┌──────────┬──────────┬──────────┬──────────┐ ▼ ▼ ▼ ▼ ▼ ┌──────────┐ ┌────────┐ ┌────────┐ ┌────────┐ ┌────────┐ │ DC01 │ │CLIENT01│ │CLIENT02│ │ Kali │ │ SIEM01 │ │WinSrv2019│ │ Win10 │ │ Win10 │ │ Linux │ │ Ubuntu │ │.10.128 │ │.10.131 │ │.10.132 │ │.10.129 │ │.10.130 │ │AD+Sysmon │ │Sysmon │ │Sysmon │ │Attaque │ │Splunk │ └──────────┘ └────────┘ └────────┘ └────────┘ └────────┘ │ │ │ ▲ └───────────┴──────────┴── logs :9997 ──────┘ Splunk Universal Forwarder ``` **Active Directory 域:** `attcklab.local` ## 💻 虚拟机 | 机器 | 角色 | IP | 操作系统 | |---|---|---|---| | DC01 | AD 域控制器 | 192.168.10.128 | Windows Server 2019 | | CLIENT01 | 客户端主机(受害者) | 192.168.10.131 | Windows 10 | | CLIENT02 | 客户端主机(受害者) | 192.168.10.132 | Windows 10 | | Kali Linux | 攻击机 | 192.168.10.129 | Kali Linux | | SIEM01 | SIEM 服务器 | 192.168.10.130 | Ubuntu Server | ## 🔍 监控技术栈 ``` DC01 / CLIENT01 / CLIENT02 │ Sysmon (config SwiftOnSecurity) Event IDs : 1 (ProcessCreate) · 3 (NetworkConnect) 13 (RegistryEvent) · 22 (DNSQuery) │ Splunk Universal Forwarder (:9997) │ ▼ SIEM01 — Splunk Free index=attacklab 40 000+ événements centralisés ``` ## ⚔️ 模拟的 MITRE ATT&CK 技术 ### 按战术摘要 | 战术 | 模拟的技术 | 检测状态 | |---|---|---| | 初始访问 | T1566.002 · T1189 · T1190 | 3/3 ✅ | | 执行 | T1059.001 · T1059.005 · T1053.005 | 3/3 ✅ | | 持久化 | T1547.001 · T1543.003 · T1053.005 | 3/3 ✅ | | 权限提升 | T1548.002 · T1134.001 · T1574.001 | 2/3 ⚠️ | | 横向移动 | T1021.002 · T1047 · T1021.001 | 3/3 ✅ | | 数据窃取 | T1048.001 · T1041 · T1560.001 | 1/3 ⚠️ | | 命令与控制 | T1071.001 · T1071.004 · T1573.002 | 3/3 ✅ | ### 技术详情
战术 1 — 初始访问 | ID | 技术 | 工具 | 检测状态 | |---|---|---|---| | T1566.002 | 鱼叉式链接钓鱼 | msfvenom + phishing.hta | ✅ | | T1189 | 水坑攻击 | 虚假网页 + update.exe | ✅ | | T1190 | 服务漏洞利用 | EternalBlue / MS17-010 | ✅ |
战术 2 — 执行 | ID | 技术 | 工具 | 检测状态 | |---|---|---|---| | T1059.001 | PowerShell | Invoke-AtomicTest | ✅ | | T1059.005 | VBScript / WSH | invoice.vbs | ✅ | | T1053.005 | 计划任务 | schtasks EventViewerBypass | ✅ |
战术 3 — 持久化 | ID | 技术 | 工具 | 检测状态 | |---|---|---|---| | T1547.001 | 注册表启动项 | Atomic Red Team | ✅ EID 13 | | T1543.003 | 创建服务 | Atomic Red Team | ✅ EID 1 | | T1053.005 | 计划任务 | Atomic Red Team | ✅ EID 4698 |
战术 4 — 权限提升 | ID | 技术 | 工具 | 检测状态 | |---|---|---|---| | T1548.002 | 绕过 UAC | 事件查看器绕过 | ✅ EID 4688 | | T1134.001 | 访问令牌操纵 | 命名管道 | ❌ 检测盲点 | | T1574.001 | DLL 劫持 | 替换 amsi.dll | ✅ 11 个事件 |
战术 5 — 横向移动 | ID | 技术 | 工具 | 检测状态 | |---|---|---|---| | T1021.002 | PsExec | Atomic Red Team | ✅ EID 4624 | | T1047 | WMI 远程执行 | wmic → notepad.exe 在 DC01 | ✅ EID 4688 | | T1021.001 | RDP | mstsc.exe | ✅ EID 4624 |
战术 6 — 数据窃取 | ID | 技术 | 工具 | 检测状态 | |---|---|---|---| | T1048.001 | DNS 隧道 | Resolve-DnsName | ❌ 检测盲点 | | T1041 | HTTP 窃取 | Invoke-WebRequest | ❌ 检测盲点 | | T1560.001 | 归档 + 窃取 | WinRAR + cmd.exe | ✅ Sysmon EID 1 |
战术 7 — 命令与控制 | ID | 技术 | 工具 | 检测状态 | |---|---|---|---| | T1071.001 | C2 HTTP 心跳 | beacon_http.exe :8080 | ✅ Sysmon EID 3 | | T1071.004 | DNS 心跳 | dnscat2 每 4 秒一次 | ✅ Sysmon EID 22 | | T1573.002 | 加密 HTTPS 通道 | beacon_https.exe :443 | ✅ Sysmon EID 3 |
## 📊 检测率 — 85.7% ``` Techniques simulées : 21 Techniques détectées : 18 ████████████████████░░ 85.7% Angles morts : 3 ░░░░░░░░░░░░░░░░░░░░██ 14.3% Règles Sigma créées : 3 ``` **ATT&CK Navigator 矩阵:** 🟩 已检测 · 🟥 检测盲点 ## 🔧 创建的 Sigma 规则(针对检测盲点) ### `sigma_token_manipulation.yml` — T1134.001 ``` title: Token Manipulation via Named Pipe detection: selection: EventID: 4688 NewProcessName|endswith: - '\cmd.exe' - '\powershell.exe' TokenElevationType: '%%1937' level: high tags: - attack.privilege_escalation - attack.t1134.001 ``` ### `sigma_dns_tunneling.yml` — T1048.001 ``` title: DNS Tunneling Detection detection: selection: EventID: 22 QueryName|contains: - '.tunnel.' - 'dnscat' - 'iodine' level: high tags: - attack.exfiltration - attack.t1048.001 ``` ### `sigma_exfiltration_http.yml` — T1041 ``` title: Exfiltration via HTTP vers IP externe detection: selection: EventID: 3 Initiated: 'true' DestinationPort: - 80 - 8080 - 9090 filter: DestinationIp|startswith: - '192.168.' - '10.' condition: selection and not filter level: medium tags: - attack.exfiltration - attack.t1041 ``` ## 🎬 演示 ## 📁 仓库结构 ``` mitre-attack-detection-lab/ │ ├── README.md ├── rapport_mitre_FINAL.pdf │ ├── sigma-rules/ │ ├── sigma_token_manipulation.yml │ ├── sigma_dns_tunneling.yml │ └── sigma_exfiltration_http.yml │ └── attack-navigator/ ``` ## 👥 作者 Abir Majdi GitHub:[@penelopeeckhar](https://github.com/penelopeeckhar) · 作品集:[penelopeeckhar.github.io/portfolio](https://penelopeeckhar.github.io/portfolio)
标签:Active Directory, AMSI绕过, Cloudflare, Conpot, MITRE ATT&CK, OISF, Plaso, Sigma规则, Sysmon, Terraform 安全, Windows安全, 威胁检测, 安全事件管理, 安全实验室, 安全运营, 扫描框架, 日志管理, 模拟测试, 目标导入, 结构化查询, 网络安全, 自动化安全, 虚拟化, 隐私保护