Active Directory Overview
AD 是 Windows 网络环境中的目录服务。它采用分布式分层结构,允许对组织资源(包括用户、计算机、组、网络设备、文件共享、组策略、服务器、工作站以及信任关系)进行集中管理。AD 在 Windows 域环境中提供身份验证和授权功能。它最早随 Windows Server 2000 发布,近年来面临的攻击日益增加。由于设计上强调向后兼容,许多功能可以说并非“默认安全”,因此极易被错误配置。"
AD 本质上是一个可供域内所有用户访问的大型数据库
1. AD结构
Active Directory 采用分层树状结构,顶部为森林,其中包含一个或多个域,域内还可包含嵌套的子域。森林是安全边界,该边界内的所有对象均受管理控制
一个森林可包含多个域,而一个域可包含进一步的子域。域是其中包含的对象(如用户、计算机和组)可被访问的结构。对象是 Active Directory 中最基本的数据单元。
AD包含很多内置的OU,比如域控、用户、计算机。切可以创建新的OU,OU也可以包含子OU和对象
我们可以通过在域控制器上打开 Active Directory Users and Computers 以图形方式查看此结构。
- 左边的就是OU,如
Admin、Employees - 右边的就是子OU,如图中显示的就是
EmployeesOU下的子OU
2. AD中的特权组
AD中存在很多具有特权的组,他们几把都用有强大的power。如果我们能获取到某个特权的组的权限,通常都可以进行Abuse
一下是一部分常见的OU
| Group | 描述 |
|---|---|
| Default Administrators | 域管理员和企业管理员“超级”组。 |
| Server Operators | 成员可以修改服务、访问 SMB 共享以及备份文件。 |
| Backup Operators | 成员被允许在 DC 上本地登录,应被视为域管理员。他们可以创建 SAM/NTDS 数据库的卷影副本,远程读取注册表,并通过 SMB 访问 DC 上的文件系统。该组有时会被添加到非 DC 的本地 Backup Operators 组中。 |
| Print Operators | 成员被允许在 DC 上本地登录,并能“欺骗” Windows 加载恶意驱动程序。 |
| Hyper-V Administrators | 如果存在虚拟 DC,任何虚拟化管理员(如 Hyper-V 管理员组成员)都应被视为域管理员。 |
| Account Operators | 成员可以修改域内非受保护的账户和组。 |
| Remote Desktop Users | 默认未被授予任何有效权限,但通常会被赋予“允许通过远程桌面服务登录”等额外权利,并可利用 RDP 协议进行横向移动。 |
| Remote Management Users | 成员被允许使用 PSRemoting 登录到 DC(此组有时会被添加到非 DC 的本地远程管理组中)。 |
| Group Policy Creator Owners | 成员可以创建新的 GPO,但若要将 GPO 链接到域或 OU 等容器,则需要被授予额外的委派权限。 |
| Schema Admins | 成员可以修改 AD 架构结构,并通过将受损账户添加到默认对象 ACL,对任何将来创建的组或 GPO 设置后门。 |
| DNS Admins | 成员可以在 DC 上加载 DLL,但没有重启 DNS 服务器的权限。他们可以加载恶意 DLL 并等待重启作为持久化机制。加载 DLL 常导致服务崩溃,更可靠的利用方式是 创建 WPAD 记录。 |
2.1. 用户权限与UAC
根据组成员身份以及其他因素(如通过组策略分配的权限),用户账户可以被赋予各种不同的权利。微软这篇关于用户权限分配的文章详细解释了 Windows 中可配置的各项用户权利。
输入命令 whoami /priv将会列出分配给当前用户的用户权限。某些权限仅对管理员用户可用,且只有在运行提升权限的 cmd 或 PowerShell 会话时才能被列出或利用。这些提升权限和用户帐户控制(UAC)的概念是 Windows Vista 引入的安全功能,旨在默认限制应用程序以完整权限运行。
3. Microsoft 远程服务器管理工具 (RSAT)
自 Windows 2000 时代起, Remote Server Administration Tools ( RSAT )就一直是 Windows 系统的组成部分。RSAT 允许系统管理员通过运行 Windows 10、Windows 8.1、Windows 7 或 Windows Vista 的工作站,远程管理 Windows Server 的角色和功能。 RSAT 仅可安装在 Windows 的专业版或企业版上。在企业环境中,RSAT 能够远程管理 Active Directory、DNS 和 DHCP。此外,RSAT 还支持管理已安装的服务器角色与功能、文件服务以及 Hyper-V。 RSAT 中包含的工具完整列表如下:
- SMTP Server Tools (SMTP 服务器工具)
- Hyper-V Management Tools (Hyper-V 管理工具,含 PowerShell 模块与 GUI)
- Windows Server Update Services Tools (WSUS 工具,含 API、PowerShell 与管理控制台)
- Active Directory Users and Computers Snap-in (AD 用户和计算机管理单元)
- Active Directory Sites and Services Snap-in (AD 站点和服务管理单元)
- Active Directory Domains and Trusts Snap-in (AD 域和信任管理单元)
- Active Directory Administrative Center Snap-in (AD 管理中心管理单元)
- ADSI Edit Snap-in (ADSI 编辑管理单元)
- Active Directory Schema Snap-in (AD 架构管理单元)
- Active Directory Command Line Tools (AD 命令行工具)
- Active Directory Module for Windows PowerShell (PowerShell 的 AD 模块)
- IIS Management Tools (IIS 管理工具,含控制台与兼容性组件)
- Feature Tools (特性工具)
- Remote Desktop Services Tools (远程桌面服务工具)
- Role Tools (角色工具)
- Group Policy Tools (组策略工具)
以下就是一些RSAT工具
4. NT AUTHORITY\SYSTEM
LocalSystem 账户 NT AUTHORITY\SYSTEM 是 Windows 操作系统中的内置账户,由服务控制管理器使用。它拥有系统中最高的访问权限(如果授予 Trusted Installer 权限,其能力甚至可以进一步增强)。该账户的权限高于本地管理员账户,用于运行大多数 Windows 服务。此外,默认情况下,第三方服务也常在此账户的上下文中运行。SYSTEM 账户拥有以下权限:
| Privilege | 默认状态 |
|---|---|
| SE_ASSIGNPRIMARYTOKEN_NAME | 已禁用 (Disabled) |
| SE_AUDIT_NAME | 已启用 (Enabled) |
| SE_BACKUP_NAME | 已禁用 (Disabled) |
| SE_CHANGE_NOTIFY_NAME | 已启用 (Enabled) |
| SE_CREATE_GLOBAL_NAME | 已启用 (Enabled) |
| SE_CREATE_PAGEFILE_NAME | 已启用 (Enabled) |
| SE_CREATE_PERMANENT_NAME | 已启用 (Enabled) |
| SE_CREATE_TOKEN_NAME | 已禁用 (Disabled) |
| SE_DEBUG_NAME | 已启用 (Enabled) |
| SE_IMPERSONATE_NAME | 已启用 (Enabled) |
| SE_INC_BASE_PRIORITY_NAME | 已启用 (Enabled) |
| SE_INCREASE_QUOTA_NAME | 已禁用 (Disabled) |
| SE_LOAD_DRIVER_NAME | 已禁用 (Disabled) |
| SE_LOCK_MEMORY_NAME | 已启用 (Enabled) |
| SE_MANAGE_VOLUME_NAME | 已禁用 (Disabled) |
| SE_PROF_SINGLE_PROCESS_NAME | 已启用 (Enabled) |
| SE_RESTORE_NAME | 已禁用 (Disabled) |
| SE_SECURITY_NAME | 已禁用 (Disabled) |
| SE_SHUTDOWN_NAME | 已禁用 (Disabled) |
| SE_SYSTEM_ENVIRONMENT_NAME | 已禁用 (Disabled) |
| SE_SYSTEMTIME_NAME | 已禁用 (Disabled) |
| SE_TAKE_OWNERSHIP_NAME | 已禁用 (Disabled) |
| SE_TCB_NAME | 已启用 (Enabled) |
| SE_UNDOCK_NAME | 已禁用 (Disabled) |
4.1. 获取System权限
常用的漏洞如下:


