了解Active Directory攻击路径,保障企业安全
字数 1416 2025-08-22 12:22:59

Active Directory攻击路径分析与防御指南

0X01 Active Directory概述

Active Directory (AD)是Windows网络环境中负责在所有网络节点上分派和施行安全策略的核心组件。它使得用户能够在网络环境中访问多种多样的资源。

Azure Active Directory (Azure AD)是基于云计算的Active Directory版本,扩展了传统AD的边界,为企业提供跨越云端与本地应用的身份即服务解决方案(Identity as a Service, IDaaS)。

AD在企业中的关键作用:

  • 员工认证
  • 访问控制
  • 身份管理
  • 确保系统正常运作和企业业务连续性

0X02 Active Directory安全问题根源

1. 过度权限问题

  • AD中有许多不同用户组,各自拥有权限
  • 某些用户被授权过多权限
  • 攻击者可利用过度权限进行攻击

2. 配置不当

  • AD配置过程复杂
  • 错误配置导致安全性降低
  • 例如:错误配置的防火墙规则暴露AD服务

3. 漏洞未及时修补

  • AD更新包含安全漏洞修补
  • 不及时更新会使AD暴露于攻击风险

0X03 常见Active Directory攻击路径

1. 密码重置攻击

  • 攻击者利用配置不当获取密码重置权限
  • 通过社交工程(如钓鱼)获取用户访问权限
  • 修改密码控制账户,威胁整个IT架构

2. GPO策略攻击

  • 攻击者更改GPO策略的gPCFileSysPath指向恶意策略
  • 影响域管理员组用户
  • 域中任何用户都可能获得域管理员权限

3. DCSync攻击

  1. 通过钓鱼邮件入侵企业网络
  2. 利用未修复漏洞执行恶意代码
  3. 使用DCSync技术获取AD认证信息
  4. 模仿合法用户访问网络
  5. 将自己添加到AD帮助台组(具有更改密码权限)
  6. 提升权限,更改管理员账户密码
  7. 为其他用户添加恶意登录脚本

0X04 Active Directory应急响应措施

常用AD查询命令

基础信息查询:

dsquery ou DC=<DOMAIN>,DC=<DOMAIN EXTENSION>  # 列出所有OUs
netdom query WORKSTATION  # 列出域中的工作站
netdom query SERVER  # 列出域中的服务器
netdom query DC  # 列出域控制器
netdom query OU  # 列出指定用户可以创建的机器对象
netdom query PDC  # 列出主域控制器
netdom query TRUST  # 列出域信任
netdom query FSMO  # 列出当前FSMO所有者

计算机和用户查询:

dsquery COMPUTER "OU=servers,DC=<DOMAIN NAME>,DC=<DOMAIN EXTENSION>" -o rdn -limit 0 > C:\machines.txt  # 列出AD中所有计算机
dsquery user domainroot -inactive 3  # 列出超过三周不活跃的用户账户

时间戳查询:

dsquery * -filter "(whenCreated>=20201022083730.0Z)"  # 查找在UTC日期创建的内容
dsquery * -filter "((whenCreated>=20201022083730.0Z)&(objectClass=user))"
ldifde -d ou=<OU NAME>,dC=<DOMAIN NAME>,dc=<DOMAIN EXTENSION> -l whencreated,whenchanged -p onelevel -r "(ObjectCategory=user)" -f <OUTPUT FILENAME>

PowerShell查询:

import-module activedirectory
Get-QADUser -CreatedAfter (Get.Date).AddDays(-90)
Get-ADUser -Filter * -Properties whenCreated | Where-Object { $_.whenCreated -ge ((Get.Date).AddDays(-90)).Date }

GPO组策略应急响应

基本操作:

gpupdate /force  # 获取并强制执行新政策
gpupdate /sync

用户隔离:

dsadd OU <QUARANTINE BAD OU>  # 创建隔离OU
Move-ADObject 'CN=<USER NAME>,CN=<OLD USER GROUP>,DC=<OLD DOMAIN>,DC=<OLD EXTENSION>' -TargetPath 'OU=<NEW USER GROUP>,DC=<OLD DOMAIN>,DC=<OLD EXTENSION>'
dsmove "CN=<USER NAME>,OU=<OLD USER OU>,DC=<OLD DOMAIN>,DC=<OLD EXTENSION>" -newparent OU=<NEW USER GROUP>,DC=<OLD DOMAIN>,DC=<OLD EXTENSION>

安全加固:

reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer" /v DisallowRun /t REG_DWORD /d "00000001" /f  # 不允许运行.exe文件
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server" /f /v fDenyTSConnections /t REG_DWORD /d 1  # 禁用远程桌面
reg add HKLM\SYSTEM\CurrentControlSet\Control\Lsa /v restrictanonymous /t REG_DWORD /d 1 /f  # 限制匿名访问
reg add HKLM\SYSTEM\CurrentControlSet\Control\Lsa /v restrictanonymoussam /t REG_DWORD /d 1 /f  # 不允许匿名枚举SAM账户
reg add "HKCU\Control Panel\Accessibility\StickyKeys" /v Flags /t REG_SZ /d 506 /f  # 禁用粘滞键
reg add "HKCU\Control Panel\Accessibility\ToggleKeys" /v Flags /t REG_SZ /d 58 /f  # 禁用切换键

检测特征

  • Rubeus和kekeo的till都是20370913024805Z
  • kekeo/mimikatz nonce是12381973
  • rubeus nonce是1818848256

0X05 攻击路径管理(APM)

攻击路径管理(APM)是企业从攻击者角度洞察防御弱点的过程,通过了解潜在攻击路径构建更强大的安全防御。

APM功能:

  • 持续发现、映射和风险评估AD攻击路径
  • 消除、缓解和管理攻击路径
  • 实现有效的分层管理和最小权限
  • 减少AD提供的攻击面

推荐工具:FalconHound

  • 用Go语言编写,跨平台支持
  • 梳理杂乱日志,提高AD防御能力
  • 可与SIEM系统(Sentinel/Splunk)集成
  • 检测用户到高价值资产的路径变化

0X06 防御建议

  1. 权限管理

    • 实施最小权限原则
    • 定期审查用户权限分配
  2. 配置管理

    • 遵循AD安全配置基线
    • 定期审计AD配置
  3. 补丁管理

    • 及时安装AD相关安全补丁
    • 特别注意KB2962486补丁(防止密码存储在groups.xml)
  4. 监控与检测

    • 实施APM策略
    • 监控异常活动(如DCSync操作)
  5. 应急准备

    • 制定AD安全事件响应计划
    • 定期演练AD攻击场景响应
  6. 云环境集成

    • 统一管理本地AD和Azure AD安全策略
    • 监控跨环境攻击路径
Active Directory攻击路径分析与防御指南 0X01 Active Directory概述 Active Directory (AD)是Windows网络环境中负责在所有网络节点上分派和施行安全策略的核心组件。它使得用户能够在网络环境中访问多种多样的资源。 Azure Active Directory (Azure AD)是基于云计算的Active Directory版本,扩展了传统AD的边界,为企业提供跨越云端与本地应用的身份即服务解决方案(Identity as a Service, IDaaS)。 AD在企业中的关键作用: 员工认证 访问控制 身份管理 确保系统正常运作和企业业务连续性 0X02 Active Directory安全问题根源 1. 过度权限问题 AD中有许多不同用户组,各自拥有权限 某些用户被授权过多权限 攻击者可利用过度权限进行攻击 2. 配置不当 AD配置过程复杂 错误配置导致安全性降低 例如:错误配置的防火墙规则暴露AD服务 3. 漏洞未及时修补 AD更新包含安全漏洞修补 不及时更新会使AD暴露于攻击风险 0X03 常见Active Directory攻击路径 1. 密码重置攻击 攻击者利用配置不当获取密码重置权限 通过社交工程(如钓鱼)获取用户访问权限 修改密码控制账户,威胁整个IT架构 2. GPO策略攻击 攻击者更改GPO策略的gPCFileSysPath指向恶意策略 影响域管理员组用户 域中任何用户都可能获得域管理员权限 3. DCSync攻击 通过钓鱼邮件入侵企业网络 利用未修复漏洞执行恶意代码 使用DCSync技术获取AD认证信息 模仿合法用户访问网络 将自己添加到AD帮助台组(具有更改密码权限) 提升权限,更改管理员账户密码 为其他用户添加恶意登录脚本 0X04 Active Directory应急响应措施 常用AD查询命令 基础信息查询: 计算机和用户查询: 时间戳查询: PowerShell查询: GPO组策略应急响应 基本操作: 用户隔离: 安全加固: 检测特征 Rubeus和kekeo的till都是20370913024805Z kekeo/mimikatz nonce是12381973 rubeus nonce是1818848256 0X05 攻击路径管理(APM) 攻击路径管理(APM)是企业从攻击者角度洞察防御弱点的过程,通过了解潜在攻击路径构建更强大的安全防御。 APM功能: 持续发现、映射和风险评估AD攻击路径 消除、缓解和管理攻击路径 实现有效的分层管理和最小权限 减少AD提供的攻击面 推荐工具:FalconHound 用Go语言编写,跨平台支持 梳理杂乱日志,提高AD防御能力 可与SIEM系统(Sentinel/Splunk)集成 检测用户到高价值资产的路径变化 0X06 防御建议 权限管理 : 实施最小权限原则 定期审查用户权限分配 配置管理 : 遵循AD安全配置基线 定期审计AD配置 补丁管理 : 及时安装AD相关安全补丁 特别注意KB2962486补丁(防止密码存储在groups.xml) 监控与检测 : 实施APM策略 监控异常活动(如DCSync操作) 应急准备 : 制定AD安全事件响应计划 定期演练AD攻击场景响应 云环境集成 : 统一管理本地AD和Azure AD安全策略 监控跨环境攻击路径