Wais000/Game-of-Active-Directory

GitHub: Wais000/Game-of-Active-Directory

该项目是一个 Active Directory 安全实验工程,通过模拟完整的域攻陷流程并在 Wazuh SIEM 中重建检测与防御方案,实现了攻防闭环学习。

Stars: 0 | Forks: 0

# 🛡️ Game of Active Directory — 全面攻陷与检测工程

## 📑 目录 - [🛡️ Game of Active Directory — 全面攻陷与检测工程](#️-game-of-active-directory--full-compromise--detection-engineering) - [📑 目录](#-table-of-contents) - [🎯 项目概述](#-project-overview) - [🎓 学习目标](#-learning-objectives) - [🏗️ 实验室架构](#️-lab-architecture) - [🗺️ 网络拓扑图](#️-network-diagram) - [🧰 技术与工具](#-technologies--tools) - [🎯 攻击路径](#-attack-path) - [🔓 攻击纪实](#-attack-narrative) - [1. 初始访问](#1-initial-access) - [2. 网络与服务枚举](#2-network--service-enumeration) - [3. Active Directory 枚举](#3-active-directory-enumeration) - [4. 凭据发现](#4-credential-discovery) - [5. 跨所有主机的 SMB / 用户枚举](#5-smb--user-enumeration-across-all-hosts) - [6. 提权至 Domain Admin](#6-privilege-escalation-to-domain-admin) - [7. 横向移动](#7-lateral-movement) - [🔵 蓝队调查 (Wazuh)](#-blue-team-investigation-wazuh) - [建立可见性](#establishing-visibility) - [从日志重建杀伤链](#reconstructing-the-kill-chain-from-logs) - [真实告警证据](#real-alert-evidence) - [🚨 检测工程](#-detection-engineering) - [🛡️ 防御加固](#️-defensive-hardening) - [🎯 MITRE ATT\&CK 映射](#-mitre-attck-mapping) - [📚 演示的 Active Directory 概念](#-active-directory-concepts-demonstrated) - [🧠 展示的技能](#-skills-demonstrated) - [📝 经验教训](#-lessons-learned) - [📁 仓库结构](#-repository-structure) - [📚 参考](#-references) ## 🎯 项目概述 本项目记录了在 **GOAD** 中进行的一次完整的先攻后防的攻防演练,这是一个故意设置为存在漏洞的、通过脚本部署的 Active Directory 环境,旨在模拟真实的企业配置错误。本次演练涵盖了完整的攻击生命周期——从通过跳板机的初始 SSH 枢纽,到完全攻陷两台 Domain Controller——随后使用 **Wazuh SIEM** 进行防御方调查,编写自定义检测规则,并对导致此次攻陷的配置错误进行修复。 此次演练的目标不仅仅是作为攻击者去“赢”,而是为了形成闭环:完全依靠日志证据重建入侵过程,验证新的检测规则确实会触发,并应用特定的加固措施以打破杀伤链的每一个环节。 ## 🎓 学习目标 - 理解 Active Directory 信任结构(森林、域、子域)以及它们如何扩大攻击面。 - 在真实的多主机环境中练习 AD 枚举和凭据收集技术。 - 将提权技术(服务漏洞利用、token 模拟、凭据转储)组合起来,实现对 Domain Admin 的全面攻陷。 - 完全根据 SIEM 遥测数据重建攻击时间线,而不依赖攻击方的笔记。 - 针对真实的攻击者工具,编写并验证自定义 Wazuh 检测规则。 - 应用与每个被利用的弱点直接对应的定向加固措施。 ## 🏗️ 实验室架构 | 主机 | 角色 | IP 地址 | |---|---|---| | `ubuntu-jumpbox` | SSH 枢纽 / 入口点 | `192.168.56.100` | | `kingslanding` | Domain Controller(根域) | `192.168.56.10` | | `winterfell` | Domain Controller(子域) | `192.168.56.11` | | `castelblack` | 成员服务器 (IIS / MSSQL) | `192.168.56.22` | | `goad-vm-wazuh` | SIEM — Wazuh 管理器与仪表板 | `192.168.56.51` | **域:** `sevenkingdoms.local`,包含子域 `north.sevenkingdoms.local` ## 🗺️ 网络拓扑图 ``` flowchart LR Attacker["Kali Attacker Host"] -- "SSH (jumpbox.pem)" --> JB["ubuntu-jumpbox
192.168.56.100"] JB -- "internal network" --> DC1["kingslanding (DC)
192.168.56.10"] JB --> DC2["winterfell (DC)
192.168.56.11"] JB --> MS["castelblack (IIS/MSSQL)
192.168.56.22"] JB -- "SOCKS5 tunnel :1080" --> SIEM["goad-vm-wazuh
192.168.56.51"] DC1 <-- "bidirectional trust" --> DC2 style Attacker fill:#0b1220,color:#e5e7eb,stroke:#ef4444 style JB fill:#1f2937,color:#e5e7eb style DC1 fill:#1f2937,color:#e5e7eb style DC2 fill:#1f2937,color:#e5e7eb style MS fill:#1f2937,color:#e5e7eb style SIEM fill:#1f2937,color:#e5e7eb ``` ## 🧰 技术与工具 | 类别 | 工具 / 技术 | |---|---| | 操作系统 | Kali Linux(攻击者)、Windows Server(DC/成员服务器)、Ubuntu(跳板机) | | AD 枚举 | `nmap`、`crackmapexec` | | 漏洞利用 | ASPX webshell 上传、GodPotato(提权) | | 凭据获取 | `mimikatz`、明文凭据 grep、注册表配置单元转储 (`reg save SAM/SYSTEM/SECURITY`) | | 横向移动 | Pass-the-Hash、CrackMapExec | | 枢纽转发 | SSH 动态端口转发 (SOCKS5)、FoxyProxy | | 检测 / SIEM | Wazuh 管理器、Wazuh 仪表板、自定义 `local_rules.xml` | | 基础设施 | GOAD (Vagrant / VirtualBox / Ansible / Docker) | ## 🎯
标签:Active Directory, CTI, PE 加载器, Plaso, TGT, Wazuh, Web报告查看器, 攻防演练, 系统提示词, 网络安全, 请求拦截, 隐私保护