定义测试范围
在开始Active Directory渗透测试之前,必须清楚地定义测试范围,并从组织负责人处获得书面授权。测试范围应涵盖特定的域、林、组织单位和将被分析以查找漏洞和配置错误的关键系统。
范围文档包括目标域控制器的列表、排除条件(受保护的系统、关键服务)、执行工作的时间窗口和成功指标。良好定义的测试边界可以降低对生产系统造成意外影响的风险,并确保重点关注基础设施中最重要的区域。
- 在开始测试活动之前获得书面授权
- 建立升级联系人和关键发现的事件处理程序
- 协调活跃测试阶段的可接受时间窗口
侦察和信息收集阶段
侦察从收集有关Active Directory结构的信息开始,而不使用可能产生异常的工具。分析公共来源、DNS记录、开放端口和可访问的服务。此阶段识别域控制器、全局编录和其他关键基础设施组件。
被动分析揭示了基本的域结构、使用的操作系统版本和主要安全系统,如防火墙和入侵检测系统。此信息用于规划后续的主动测试,而不会过早触发防御机制。
- 分析DNS区域和公共WHOIS记录
- 识别开放端口和运行的服务
- 从可用元数据确定操作系统和应用程序版本
用户、组和权限的枚举
获得网络访问权限后,进行用户、组、组成员身份和分配权限的详细枚举。使用内置的Active Directory工具查询有关组织结构的信息,包括受保护的组、高权限用户和委派的权限。
分析特权组的成员身份,例如域管理员、企业管理员和架构管理员,可以揭示潜在的攻击点。特别关注意外的成员身份、休眠帐户和分配给服务帐户的权限,这些权限可能被破坏以实现域级别的特权。
- 查询域树和林结构信息
- 分析关键组和角色中的成员身份
- 识别具有委派权限和权限的用户
配置漏洞的识别
测试识别了典型的配置弱点,例如弱密码策略、关键帐户缺乏多因素身份验证、不当的权限委派和配置错误的组策略对象。验证域控制器版本和基础设施组件中已知漏洞的存在。
分析还包括审查变更历史、已离职员工的残留访问权限、未使用的服务帐户以及处于不安全状态的系统。特别关注身份验证机制以及执行凭据访问或权限提升攻击的可能性。
- 审查密码策略和复杂性要求
- 分析委派配置和权限
- 测试凭据保护和身份验证机制
权限提升路径分析
测试识别了从普通用户升级到域管理员的可能路径。分析允许在单个系统上进行本地权限提升的配置,然后如何使用此访问权限来破坏具有域级权限的帐户。
特别关注需要多个顺序步骤的攻击链:例如,使用配置错误的服务来获取本地管理员访问权限,然后使用该访问权限检索可用于攻击域控制器的凭据。这样,即使单个系统上的弱配置错误也可能导致整个基础设施的泄露。
- 分析特权服务配置和可访问性
- 识别工作站上可用的凭据和材料
- 验证防止权限提升的安全机制
检测和日志记录机制的评估
测试评估监控系统检测Active Directory上各种类型攻击的能力。验证未经授权的访问尝试、安全配置变更、未经授权的特权帐户使用和可疑网络活动的日志记录。
分析包括验证日志完整性、各种攻击类型的检测时间和事件响应速度。缺少或配置错误的日志记录可以隐藏泄露的迹象,使攻击者能够在系统中保持未被发现的状态较长时间,同时在网络中执行横向移动。
- 验证域控制器日志记录配置
- 评估SIEM系统中的攻击可见性
- 分析检测时间框架和响应能力
结果和建议的文档记录
渗透测试结果记录在详细的报告中,包含已识别漏洞的描述、其严重性和对基础设施的潜在影响。每个发现都包括有关发现方法、基础设施中的精确位置和复现步骤的信息。
报告包含按优先级排列的补救建议,首先是需要立即注意的关键问题。对于每条建议,都规定了所需的具体行动、所需的资源和对系统可用性的可能影响。报告的结论包括对Active Directory安全状况的总体评估和改进的战略方向。
- 按严重程度和业务影响对漏洞进行分类
- 为每个发现提供精确的复现步骤
- 包括实际可行且可衡量的补救建议