域控安全 ----> Ntds.dit文件抓取

发布于:2024-05-06 ⋅ 阅读:(28) ⋅ 点赞:(0)

大家还记得内网渗透的初衷吗??? 找到域馆,拿下域控!! 拿下了域控就是拿下了整个域!!

但是大家知道拿下域环境之后应该怎么操作吗(灵魂拷问)???        

那么下面,开始我们今天的内容  NTDS.DIT文件!!

目录

1.NTDS文件

2.Ntds.dit的在线读取

1.Mimikatz的在线读取

2.QuarksPwDump在线读取

3.使用secretsdump直接读取

3.Ntds.dit的离线读取

1.转存ntds文件

1.使用ntdsutil进行卷影拷贝

2.Vssown快照提取

2.读取Ntds.dit文件

1.secretsdump读取

2.Ntdsdump获取

4.Kali-Linux进攻性读取

1.直接dumphash

2.smart_hashdump模块

3.dump下来ntds文件


1.NTDS文件

想要拿下整个域,我们先离不开这个文件!!

首先,当我们拿下域控之后,我们首先会hashdump!!!

然后你就会发现,这也根本没有krbtgt的ntlm哈希啊!!!! 

但是我们众所周知,krbtgt是KDC上的一个账号,拿下域控,就能拿到krbtgt的ntlm哈希值!!所以我们就能知道,域内的所有机器的密码根本不在域控的SAM文件里!!

而是在我们今天的主角,NTDI文件中

我们在我们的域控上(只有域控)才能看见这样的一个文件夹

我们在其文件夹中,能看见这样的一个文件!

而这个里面,就有域内的所有的用户的密码信息(红队能拿到这个就成功了)

当然了,这个文件和SAM文件一样,不允洗复制,不允洗查看,更不允洗修改

2.Ntds.dit的在线读取

在线读取的话,如果人家域内有很多的用户,就很有可能会卡死,甚至直接宕机(所以你得小心的一点,不然影响到了别人的正常的业务那可就不好了!!)

1.Mimikatz的在线读取

对于mimikatz我就不多说了,这个强大的神器,无论走到哪都是这么无敌!!!

mimikatz lsadump::dcsync  /domain:域名  /all /csv

对于普通的域内机器,肯定是拿不到的

但是对于域控,我们确实可以直接拿到的

2.QuarksPwDump在线读取

这个也是一个可以在线读取的工具,不过需要你先将nitdis文件转存出来(这个后面再讲)

shell QuarksPwDump.exe  --dump-hash-domain --ntds-file ntdis.dit

3.使用secretsdump直接读取

网上是用的py文件,我就直接用的exe了

3.Ntds.dit的离线读取

1.转存ntds文件

相比于在线读取,这个倒不会出现什么卡死的情况,但是人家域控不出网,就意味着你要挂多层代理,传输肯定受到影响!!!  所以你们自行斟酌哪个好!!!

1.使用ntdsutil进行卷影拷贝

这个是Windows自带的,我们先复制到桌面(或者直接传上去使用)

然后就是做卷影了(其实就是copy一份)

ntdsutil.exe snapshot "activate instance ntds" create q  q 

然后就去挂载

ntdsutil.exe snapshot "mount {刚才让你记住的东西}" q q 

这时候我们就能在C盘下看见一个快照

然后我们可以把他复制出来

copy C:\$SNAP_202405051816_VOLUMEC$\Windows\NTDS\ntds.dit C:\

这样,ntds文件就被复制出来了 

2.Vssown快照提取

首先,这个vssown不是微软自带的,你可以去下载一下,然后传上去

第一步先启动卷影复制服务

shell cscript vssown.vbs  /start

然后就是去创建一个卷影副本

cscript  vssown.vbs /create c

接着再去list一下

cscript vssown.vbs  /list

记得去复制一下上面的那个 device object

最后就是copy了

copy \\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy2\Windows\NTDS\ntds.dit  C:\Users

至此,我们就拿到了它的ntds.dit文件了!!! 

2.读取Ntds.dit文件

在读取之前,我们首先要导出system的一个key!!!

shell reg save hklm\system   C:\system.hive

然后我们把他下载下来

这玩意可能会有点大,不过没事,要等等(如果网络环境差的话那就难崩了)

1.secretsdump读取

我们可以用impacket工具包里面的secretsdump这个py脚本获取

python secretsdump.py -system  hive文件的路径 -ntds ntds.dit的文件路径 LOCAL

能成功获取的到 

2.Ntdsdump获取

这个方法我是失败了,可能是工具的原因(难崩)

那我们还是用secretsdump吧!!!

4.Kali-Linux进攻性读取

1.直接dumphash

当我们给目标上了马之后,我们可以先看一下权限

如果是过了UAC的管理员的话,就可以直接hashdump啦!!

2.smart_hashdump模块

这个是msf的一个模块(不过我感觉在有hashdump的模块下这个多此一举)

use post/windows/gather/smart_hashdump

然后查看回我们刚才会话的session

sessions -i

然后填上sessionid

set session 1

这个看起来会更加的酷炫一点!!! 

3.dump下来ntds文件

这个就不在细说,有点类似于横向!!