在上一篇主要说了物理接触到的,也仅限于本地的计算机该如何导出HASH,那么随着现在企业化和云管理化的推进,大部分中小企业已经开始推广域,国外应该说已经普及,国内大概也就只是外企和大公司才会使用域,不过平时的工作中也会经常碰到域,这次系列二就来聊聊关于域HASH的事儿。
在这之前,我们得先了解一个概念:
什么是活动目录(Active Directory)?
引用自百度百科:
“活动目录(Active Directory)是面向Windows Standard Server、Windows Enterprise Server以及 Windows Datacenter Server的目录服务。(Active Directory不能运行在Windows Web Server上,但是可以通过它对运行Windows Web Server的计算机进行管理。)Active Directory存储了有关网络对象的信息,并且让管理员和用户能够轻松地查找和使用这些信息。Active Directory使用了一种结构化的数据存储方式,并以此作为基础对目录信息进行合乎逻辑的分层组织。”
看了上面的介绍,我想大家一定不懂什么是活动目录,一般除了那种只会概念的管理员来讲,看了这种概念性极强、抽象性极强的东西都不会懂是什么意思。如果不严谨一些并且是简单来说,活动目录(AD)是在内网中运行域控、DNS等等的基础,域控只不过是一台控制机器,它和DNS等等一切服务都是运行在AD之中的。如果还是不理解,建议自己搭建一个域来试试感觉。
说到正题,那碰到AD之后我们要怎么才能获取HASH呢?
在域内,HASH是存在NTDS.DIT中的, NTDS.DIT是一个二进制文件,就等同于本地计算机的SAM文件,它的存放位置是%SystemRoot%\ntds\NTDS.DIT。这里面包含的不只是Username和HASH,还有OU、Group等等。
和SAM文件一样,这个文件肯定也是被系统锁定的,Windows Server
2008中,我们可以使用ntdsutil快照来拷贝这个文件,相关的MSDN文档如下:
http://technet.microsoft.com/zh-cn/library/cc753609(v=ws.10).aspx
如何从NTDS.DIT中分离HASH?
如果你想简单一些,Windows Password Recovery tool,这个工具就可以,不过是收费的。
稍早一些的时候,分离HASH的工具都是用Csaba
Barta写的ntds_dump_hash.zip,不过现在这玩意已经失效了。
现在最新的工具是 NTDSXtract,关于如何分离我就不多说了,FreeBuf有文章介绍过,传送门。
亮点
不想下载NTDS.DIT的话,你还有很多工具可以选择,工具这个东西当然是有利有弊,老外有一个工具评测列表,我根据他的又整理和加了一些内容,大家随意下载观看。
最后,感谢T00LS某位大牛和火狐某位老前辈对本文的指导。
Part 2结束。