首页 网络安全 安全学院 查看内容

Windows server 2012 用户hash抓取方法研究(本地+域)

2015-6-12 14:20 |来自: 91ri.org 2397 0

摘要: 为避免文章过长,这里就不贴出详细测试过程了。经过我的测试,发现本地用户hash抓取的方法中,以下几种方式是可行的:注册表导出+cainPwdump7.exeQuarksPwDump.exemimikatz.exe这几种方式都可以抓到本地用户hash,其 ...
关键词: 用户 hash exe 直接 密码 windows 明文 测试 ntds QuarksPwDump

为避免文章过长,这里就不贴出详细测试过程了。经过我的测试,发现本地用户hash抓取的方法中,以下几种方式是可行的:

注册表导出+cain

Pwdump7.exe

QuarksPwDump.exe

mimikatz.exe

这几种方式都可以抓到本地用户hash,其中mimikatz.exe只能抓到登陆过的账户的hash值,

已经抓取不到明文的密码了,但是,有一些有意思的东西,直接上图:

Windows server 2012 用户hash抓取方法研究(本地+域)

仔细看图,可以发现,wdigest的内容为n.a. ,也就是没有抓取到明文密码。看来微软还是有一点改进的,注入lsass.exe进程已经抓不到明文了。

但是,重点是!!!LM hash被抓出来了,而且完全是正确的!!!

当密码长度小于等于14位,只要有lm hash基本上都是秒破,我见过很多管理员的密码根本没有14位长。从vista开始就已经不保存lm hash了,但是没想到2012里还能抓到lm……

然后wce.exe gethashes.exe gsecdump.exe抓取本地用户hash都失败了,其中wce更让人无语

执行后会导致服务器直接重启

Windows server 2012 用户hash抓取方法研究(本地+域)

不过我倒是顺带发现psexec启用system权限的方法对于2012还是适用的

域用户hash抓取测试

在虚拟机中搭建好域,域控制器就是这台windows server 2012,另外再加入一台windows server 2003的成员机器作为测试。

域中添加AdminUser, User1用户,其中AdminUser是域管理员,再加上本地用户Administrator在安装域时会自动添加成域管理员,所以总共是3个有效用户,2个域管理员。

首先测试在2003的成员机器上登陆域用户时的情况,可以用mimikatz和各种工具直接抓取明文,这个和以前的情况一样,就不贴图了。

在windows server 2012上用mimikatz直接抓取域登陆用户hash,测试成功

Windows server 2012 用户hash抓取方法研究(本地+域)

接下来是重头戏,如何抓取所有域用户的hash

gethashes.exe 和gsecdump.exe都直接悲剧,这意味着想要轻量级的抓取所有域用户hash已经很难了。

在线抓取失败,没办法只能祭出终极武器:离线抓取!

第一种办法: vssown.vbs + libesedb + NtdsXtract

详细出处参考这里:http://pauldotcom.com/2011/11/safely-dumping-hashes-from-liv.html

首先用vssown.vbs把域数据库ntds.dit和SYSTEM文件复制一份,然后把复制文件下载回本地,再利用libesedb分解ntds.dit文件,最后用NtdsXtract分析出用户hash信息,

这种方法除了能获取用户当前密码hash外,还能获取历史密码hash值,能给社工带来更多的帮助。除此之外还能获取很多其他的信息,比如所有计算机列表,操作系统等等保存在域数据库中的数据。

具体的操作过程就直接上图了,不懂得可以去看那篇英文的文章

不过有一点需要注意,那篇文章过后vssown.vbs有更新过,在创建shadow copy时需要指定盘符,不然会有个下标越界的错误,这是为了方便当域数据库保存在D盘时的情况。

Windows server 2012 用户hash抓取方法研究(本地+域)

然后把ntds.dit和SYSTEM这两个文件下载回本地,放到BT5里面提取hash:

Windows server 2012 用户hash抓取方法研究(本地+域)

sdaggg

可以看到成功的提取了域里面所有用户的密码hash

在实际渗透时需要注意的问题:

域的数据库根据域的规模大小不一,我见过最大的有5G,所以下载回本地时推荐压缩后再下载

提取hash时最好导出到文件中,直接在后面加 >filename.txt

第二种办法:ntdsutil.exe + QuarksPwDump.exe

Ntdsutil.exe 是域控制器自带的域数据库管理工具。从windows server 2008 开始就有了。

这个方法在QuarksPwDump.exe程序的Readme.txt里面有详细的讲解(windows 2008那个,适用于windows server 2012)。按顺序运行下列命令,不用带#号

上图:

pp1

然后用QuarksPwDump.exe导出hash值,运行命令:

最新评论