单机系统密码哈希获取方法详解

系统散列值和密码获取

在Windows操作系统中,密码通常由两部分组成:LM Hash和NTLM Hash。LM Hash(LAN Manager Hash)是微软为了提高系统安全性而采用的加密算法,但由于其弱点,从Windows Vista开始,系统默认禁用了LM Hash。相比之下,NTLM Hash使用了更加安全的MD4加密算法,成为了默认的认证方式。

抓取散列值和密码

要获取Windows操作系统中的散列值或明文密码,通常需要提升权限至System。本地用户的散列值和其他安全验证信息保存在SAM文件中,而lsass.exe进程用于实现Windows的安全策略,可以使用工具将散列值和明文密码从内存中的lsass.exe进程或SAM文件导出。

SAM文件通常位于C:\windows\System32\config目录下,但由于被系统锁定,无法直接复制。渗透测试中,可以使用PE盘进入文件管理环境,直接复制SAM文件,或者使用VSS等方法进行复制。

图片[1]-单机系统密码哈希获取方法详解-山海云端论坛
图片[2]-单机系统密码哈希获取方法详解-山海云端论坛

常用工具和方法

Wce(Windows Credential Editor):这款工具可以用于获取明文密码或散列值,支持32位和64位系统。使用wce.exe -w命令可抓取用户的明文密码。

图片[3]-单机系统密码哈希获取方法详解-山海云端论坛

Lazagne:Lazagne是一个用于检索本地计算机上存储的密码的开源工具,可以检索使用不同技术存储的密码。

图片[4]-单机系统密码哈希获取方法详解-山海云端论坛

PwDump7:用于获取Windows系统中所有账户的NTLM Hash,可以通过彩虹表破解散列值。

图片[5]-单机系统密码哈希获取方法详解-山海云端论坛

Mimikatz:Mimikatz用于从Windows内存中提取明文密码、散列、PIN码和Kerberos票据。

QuarksPwDump:该工具用于系统授权信息导出。

Invoke-WCMDump:这是一个PowerShell脚本,用于获取Windows主机的凭证信息。

Hashcat:号称世界上最快的密码破解工具,支持多种哈希类型和破解模式。

系统密码防护措施

为了防止用户密码在内存中以明文形式泄露,微软发布了补丁KB2871997,关闭了Wdigest功能。Windows Server 2012及以上版本默认关闭Wdigest,使攻击者无法从内存中获取明文密码。在Windows系统中,可以通过查看注册表项Wdigest来检查Wdigest功能的状态,并通过修改注册表项来开启或关闭Wdigest Auth。

  • 开启Wdigest Auth
<code>reg add HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest /v UseLogonCredential /t REG_DWORD /d 1 /f</code>
  • 关闭Wdigest Auth
<code>reg add HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest /v UseLogonCredential /t REG_DWORD /d 0 /f</code>

或者使用PowerShell命令:

  • 开启Wdigest Auth
<code>Set-ItemProperty -Path HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest -Name UseLogonCredential -Type DWORD -Value 1</code>
  • 关闭Wdigest Auth
<code>Set-ItemProperty -Path HKLM:\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest -Name UseLogonCredential -Type DWORD -Value 0</code>

这些措施有助于提高系统的安全性,防止密码被攻击者获取。

综上所述,了解系统密码的获取方法以及如何防护系统密码对于网络安全至关重要。通过采取合适的措施和使用工具,可以有效保护系统的安全性,防止密码泄露和未经授权的访问。

© 版权声明
THE END
喜欢就支持一下吧
点赞9 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容