有没有办法获取特定本地用户的 Windows 密码的哈希值?那会是哪个 Win32 API?我不想知道实际的密码是什么,只想知道密码的哈希值。
我希望能够判断哪些工作站/服务器对特定用户没有相同的密码。
请指教,谢谢。
最佳答案
我最近没有尝试过这种技术,所以我不确定它是否仍然有效,但有一次它确实有效,而且我猜它可能仍然有效。
在每台目标计算机上为该用户的帐户调用 NetUserChangePassword
,但要使用无权更改该用户密码的帐户(例如,另一个普通用户帐户)。当您调用此方法时,您必须传递(除其他外)用户的旧密码。由于您从不允许更改用户密码的帐户调用它,因此此调用始终会失败。
您感兴趣的是失败时的错误代码。如果系统识别出您传递的旧密码(即帐户的正确密码),则调用将失败并显示 ERROR_ACCESS_DENIED
。如果您传递的密码不正确(即该帐户无法识别),则会失败并显示 ERROR_INVALID_PASSWORD
。
关于c# - Windows 哈希密码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3196600/