独辟蹊径:运用活动目录的复制元数据检验域内故意主题活动

黑客信息网

伴随着 BloodHound 近期公布的 ACL 进攻途径升级,及其@wald0和自己对活动目录中的 DACL 侧门的科学研究,我逐渐从防御力的视角科学研究根据 ACL 的进攻途径。 Sean Metcalf 在活动目录威协检验层面干了一些非常好的工作中(参照他在2017年 BSides Charm上的"Detecting the elive: Active Directory Threat Hunting"的演说) ,在文中中我觉得展现复制元数据怎样协助检验这类种类的故意主题活动。

除此之外,在这篇文章拟定以后,Grégory LUCAND 向我强调了他在同一主题风格行业写的一篇普遍的文章(法文) ,名为"元数据复制在活动目录调查取证剖析中的运用(法文版)"。 他详解了 OU 的变更,及其一些复制部件(如连接值复制)的工作方式,并对于此事开展了深入分析(比文中更深层次)。 我强烈要求你查询他的文章,即便 你迫不得已像我一样应用谷歌在线翻译阅读文章他的文章。

我将深入分析一些与域复制元数据相关的情况专业知识,随后将剖析每一个 ACL 进攻原语及其怎样检验到这种改动个人行为。 悲剧的是,复制元数据很有可能有一些限定,但它最少能够协助大家变小产生的改动恶性事件及其恶性事件产生的域控制器的范畴。

留意: 文中中的全部的事例都应用了我的检测域自然环境,它运作在 Windows 2012 r2的域作用等级。 别的域作用版本号将各有不同。 除此之外,全部的事例全是在试验室自然环境中进行的,因而在真正互联网中的准确个人行为也会各有不同。

活动目录 复制元数据

当对活动目录中的域控制器中的域目标开展变更时,这种变更将复制到同一域中的别的域控制器(客户程序这儿的"文件目录复制"一部分)。 做为复制全过程的一部分,有关复制的元数据保存在2个结构的属性中,即从别的属性测算最后值的属性。 这两个属性分别是 msDS-ReplAttributeMetaDataand和 msDS-ReplValueMetaData。

旁注: 我还在复制元数据层面的项目前期包含这篇有关追踪 UPN 改动的文章,及其这一系列产品中有关这种数据信息的不一样测试用例的文章。 这种文章论述了怎么使用 REPADMIN/showobjmeta 及其Active Directory cmdlet 枚举类型和分析回到的 XML 恢复出厂设置数据信息。 好多个月前,我push了一个 PowerView 递交,它简单化了这一枚举类型的全过程,我将在文中中演试这种新的涵数。

msDS-ReplAttributeMetaData

1.1.1

最先,大家如何知道什么属性被复制了? 目标属性自身在林方式中表明,并包括了一个包括各种各样元设定的 systemFlags 属性。 包含 FLAG_ATTR_NOT_REPLICATED 标示,它标示不可以复制给出的属性。 我们可以应用 PowerView 迅速枚举类型全部这种不能复制的属性,应用按位查看的 LDAP过滤装置查验这一标示:

Get-DomainObject -SearchBase '' -LDAPFilter '(&(objectClass=attributeSchema)(systemFlags:1.2.840.113556.1.4.803:=1))' | Select-Object -Expand ldapdisplayname

如果我们要想得到 能够被复制的属性,我们可以加上!标识符否认过滤装置的逻辑性:

Get-DomainObject -SearchBase '' -LDAPFilter '(&(objectClass=attributeSchema)(!systemFlags:1.2.840.113556.1.4.803:=1))' | Select-Object -Expand ldapdisplayname

因而,对于所述目标结合中的一切属性的变更都是会复制到别的域控制器,因而,在 msDS-ReplAttributeMetaData 中具备复制元数据的信息内容(连接属性以外,稍候将详解)。 由于这是一个结构的属性,因此大家务必特定在 LDAP 检索期内测算这一属性。 幸运的是,你能应用PowerView为 Get-Domain* 涵数特定 -Properties msDS-ReplAttributeMetaData 来完成这一点:

能够见到,大家获得了一个 XML 文字数组,它叙述了改动恶性事件。 Powerview 全新升级的 Get-DomainObjectAttributeHistory 涵数将全自动查看一个或好几个目标的 msDS-ReplAttributeMetaData,并将 XML 文字块分析为自定 PSObjects:

溶解每一个結果,大家获得了目标自身的差别名字、复制属性的名字、最后一次变更属性的時间(LastOriginatingChange)、属性变更的频次(Version) ,及其文件目录服务代理的差别名字(改动自LastOriginatingDsaDN)。

旁注: “分析 LastOriginatingDsaDN”一部分叙述了如何把这一大伙儿所熟识的名字分析为适合的域控制器目标自身。 悲剧的是,大家不清楚到底是谁开展了变更,也不知道前边的属性值是啥; 可是,大家依然可以用这种数据信息做一些有意思的事,稍候我将开展详细介绍。

msDS-ReplValueMetaData

为了更好地了解 msDS-ReplValueMetaData 及其为何它与 msDS-ReplAttributeMetaData 分离出来,你需要了解 活动目录 中的连接属性。 Windows Server 2003域作用等级中的连接值复制"容许独立复制多值属性的值。" 。在英文中,结构或取决于别的属性的属性被摆脱,那样总体的一部分能够被一个一个地复制,而不是一次性复制全部排序。 它是为了更好地降低当代域自然环境中的复制总流量而引进的。

应用连接属性,活动目录 从另一个属性(称之为前向连接)的值测算给出属性(称之为反链)的值。 最好是的事例是组员关联的 member和 memberof : 组的member属性是前向连接,而客户的memberof 属性是反链。 枚举类型客户的memberof 属性时,反链会拓宽到以形成最后的组员关联集。

有关前向连接和反链,也有2个必须留意的地区。 最先,前向连接是应写的,而反链是不能写的,因而当今向连接属性变更时,有关的反链属性的值将自动升级。 次之,因为这一缘故,域中间只复制前向连接的属性,随后全自动测算反链。 要掌握其他信息,请查询这篇有关这一主题风格的文章。

标签:

发表评论 (已有条评论)

  • 评论列表