首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Windows真的仍然使用未加盐的MD4作为密码存储吗?

Windows真的仍然使用未加盐的MD4作为密码存储吗?
EN

Security用户
提问于 2011-07-07 17:26:19
回答 2查看 15.6K关注 0票数 22

我发现很难相信Active DirectoryforWindows2008 R2中的密码仍然使用未加盐的MD4 (也称为"NT“)算法存储。

这真的是真的吗?

最近,我一直在修改对密码存储的理解,并学习如何正确使用PKDBF2。然后我想我应该查一下主要的商业组织使用了什么。那时我把头放在手里!Windows中未加盐的MD4。这是对LM散列的改进。还有很多其他的坏例子。/etc/荫蔽带一个像样的地窖是在主要商业/开放资源中唯一的良好实现。

MySQL的OLD_PASSWORD是可怕的,甚至新的密码只是未加盐的SHA-1两次。

一般的商业/开源行业真的有那么糟糕吗?

EN

回答 2

Security用户

发布于 2011-07-07 18:41:37

NTLMv1使用MD4,v2使用MD5,Kerberos的Windows实现使用KDF,使用HMAC-SHA1实现AES 128/256。Active Directory实际上可以存储多种类型的密码哈希,具体取决于您希望它做什么,以及启用了哪些版本的协议。

是的,使用未加盐的密码。这是安全问题吗?理论上是的,但实际上可能不是。AD数据库设计为存储在受保护的环境中,只有受信任的人才能访问实际文件,而且只有受信任的系统才能读取文件中的数据。只有当包含密码的特定存储可以被可能不受信任的人和/或不受信任的系统访问时,salt才能真正增加价值,比如也包含内容的SQL数据库。如果您让任何人和每个人访问AD数据库,您有比密码盐更大的问题。

当然,它的另一面也是向后兼容的。微软必须确保当前版本的AD向后兼容之前的一个4个版本。这对保安有好处吗?不完全是,但如果版本不兼容,他们会被钉死在十字架上。他们在把哈希变换成更安全的东西吗?是的,虽然很慢。

票数 18
EN

Security用户

发布于 2021-05-26 15:26:50

是的,Windows域控制器仍然存储未加盐的MD4密码散列,以便使用遗留的rc4-hmac-md5密码启用遗留的NTLM身份验证和Kerberos身份验证。

默认情况下,Windows还为每个密码存储三个Kerberos密钥:其中两个通过PBKDF2派生,一个通过基于DES的密钥推导方法派生。但是,未加盐的MD4哈希计算效率要高得多,因此通常用于密码破解。

您可能会争辩说,当攻击者能够从帐户数据库中窃取散列时,他们实际上不必破译任何密码。他们可以通过传递散列或金银票攻击来模拟任何用户。不过,我不同意这种观点,因为人们倾向于为不同的服务重用密码:损害组织的域名是一回事,但访问私人雇员邮箱也是另一回事。

我曾经进行过一次最五次的评估,我们从退役的遗留域获得散列,但是不能在新域中重用其中的许多哈希,因为新域中需要修改密码。然而,在破解了70%的遗留哈希之后,我们能够想出不同的明文密码(通过替换它们中的年份和月份号),使我们在新域拥有更高的权限。如果Windows使用了更强的密码哈希方案,这将更加困难。

票数 3
EN
页面原文内容由Security提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://security.stackexchange.com/questions/5071

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档