我正在做一个新项目,对那些有小兄弟的人有很大帮助,
我想到了这个主意:
获取用户的 NTLM 哈希,将哈希写入文本文件。
更改用户的密码(cmd.exe /c net user %username% 123)
。
更改密码后,您可以输入帐户。
我不希望有人知道我访问了该帐户(有人可以看到我更改了他的密码)
这个想法是:
打开sam
文件并写回旧哈希
(用我保存在文本文件中的旧哈希替换通过更改密码创建的新哈希。)
这意味着我不必破解密码
1.将哈希保存到文本文件中。
2.修改用户密码。
3.输入帐号。
4.将保存的哈希写回sam文件(用新替换旧)
5.这意味着我不必破解哈希,只需将其写回即可。
代码(仅解释):
Dim un As String = Environment.UserName 'UserName
Dim Hash As String = GetNtlmPass(un) 'Get Ntlm Hash By username
Shell("cmd.exe /c net user %username% 123") 'Change the password of current user
WaitCmdDone() 'Waiting until the password is changed.
PutNtlmHashBack(un,Hash) 'put the hash back by user name - This function is not exist!.
PutNtlmHashBack 函数不存在
有这样的功能PutNtlmHashBack
吗?
我只需要将 ntlm 哈希写入 sam 文件。
我可以读取所有 ntlm 哈希pwdump.exe
,如果我可以读取它,那么我可以写入。