在IT网络安全攻击系列文章中,我们将学习如何通过避免高级Active Directory(AD)域控制器(DC)攻击获得AD环境的高可用性。
DCShadow,是一种后期杀伤链攻击技术,利用这种技术,具有适当权限的攻击者可以利用AD中的复制机制创建恶意域控制器,然后将恶意对象复制到正在运行的Active Directory基础架构中任意操纵AD数据。
攻击描述:
DCShadow是脚本工具(通常称为mimikatz)中的命令。DCShadow与它的DCSync攻击技术类似,它利用Domain Admins组成员的复制特权来请求域控制器进行数据复制及更改,包括用户凭据。有关DCSync攻击的详细信息,请参见下图。
DCSync攻击的主要限制是,攻击者无法对目标AD域中的对象注入新的更改。但是,攻击者可以随时通过复制请求管理员账户的密码哈希值,然后将这些哈希值用于Pass-The-Hash哈希传递攻击,甚至可以脱机破解。一旦获得密码的哈希值,攻击者就可以使用它们以admin用户身份登录,进而操纵AD域中的对象。但是,这种攻击方式会涉及到许多繁琐的步骤,因此这种攻击行为很可能会被捕捉到。
DCShadow攻击是在DCSync上做了些改进,使用DCShadow,攻击者不再需要复制数据,而是可以在目标AD基础结构中注册新的域控制器,以在AD对象中注入后门更改,或者通过替换属性的值来更改现有对象。
DCShadow攻击的工作方式:
一旦攻击者获得了具有域复制权限的帐户的访问权限,就可以利用复制协议来模仿域控制器。
1.攻击者使用DCShadow将某台计算机(例如工作站)注册为DC。那么AD会认为该工作站是一台域控制器,并且可以进行复制更改。
2.攻击者可以注入任何后门更改,例如SIDHistory,密码,帐户属性值,组成员身份,并提交进行复制。
3.复制由DCShadow触发,然后被复制的更改则由合法的域控制器提交。
使用本地工具检测DCShadow攻击:
Mimikatz是发起DCShadow攻击的一种广泛使用的工具,但这并不意味着没有其他方法:
·恶意的终端用户可能会下载远程服务器管理工具(RSAT),试图将服务器提升为域控制器(事件ID 29223)。
·除了AD中的管理组外,其他平台上的组(例如Exchange Windows权限组)也可用于操纵域上的权限,从而导致攻击发生。
检测这些恶意安全更改的唯一有效方法就是分析Windows Event Viewer中存储的日志数据。
但是,事件日志查看器不会捕获到DCShadow对AD对象所做的任何的后门更改。所以不能通过跟踪注入到AD对象中的更改来检测DCShadow攻击。
下面这些指标可以帮助检测对AD基础结构的DCShadow攻击:
·SPN更改:两个服务主体名称(SPN)值,即全局目录SPN和目录服务复制SPN,将添加到临时升级为恶意域控制器的计算机上,并用于执行DCShadow攻击。检测SPN更改可以帮助您发现那些“伪装”成DC的恶意工作站。
·域配置名称空间的更改:与SPN值一起,DCShadow攻击还会在域的配置名称空间内创建DC,更具体地说是CN = Sites,CN = Default-first-site-name,CN = Servers内部,CN = Rogue DC位置。
复制后门更改后,它将立即删除新创建的恶意DC以覆盖任何轨迹。
·DC之间的复制:还可以通过监视DC之间的复制以检测DCShadow。但是,AD中的复制事件太多,所以通过这种方法进行解析以检测敏感的事件更改会非常耗时。
事件ID 4929可能是一个有用的指示,因为它会识别到源命名上下文被删除的事件,并且它将把源头指向那个恶意的DC。
所有这些事件都必须被及时发现,并通过相互之间的关联性以揭示潜在的DCShadow攻击尝试。
有时,仅检测安全事件其实是不够的。我们还必须具备实时告警机制和响应措施,全方位应对AD域环境中的任何未经授权的安全更改。