有一些建议是定期更改密码,大多数都是出于无意识地重复一种不太了解的做法,而不是在不同的背景下,从更早的时候开始。
最初,密码是军队的东西;每一个堡垒或营地都使用一个“密码”,士兵必须知道才能进入营地。我们有迹象表明,这种制度在2000多年前的罗马军队中得到了推广。
由于这种密码是由建筑中的几个人知道的(至少营地入口的警卫和在营地外有生意的每一名士兵,例如去取柴或水),而且还经常说出这样的密码,因而有可能成为有好耳朵的间谍的猎物,因此假定这样的密码不会长期保密。事实上,人们可以合理地预期,在任何时候,一些敌人都会知道密码。密码只是一个缓减功能,目的是推迟敌人的秘密入口,而不是阻止他们的可靠方法。一个给定密码的有效性随着时间的推移,在几个小时内稳步下降,因此必须每天更新。
然后上下文就变了。现在,您使用密码在计算机上验证您的身份。仍然有敌人,他们仍然想知道你的密码。然而,情况的一个非常重要的部分已经发生了很大的变化:从建筑上看,你是唯一知道你自己密码的人。这是正常的,预期的情况。平均来说,根本没有泄漏。您的密码不被共享。因此,密码的有效性--实际上是它的保密性--不会随着时间的推移而降低--如果攻击者成功地学习了它,它可能会下降到零,但只要不发生这种情况,密码就和新密码一样好。
另一个变化很大的上下文属性是攻击者在了解用户密码时所做的事情。在古罗马营地的设置中,攻击者会进入营地,四处游荡,试图收集情报(例如,在百夫长的帐篷周围偷听),并可能沉迷于一些偶然的破坏活动,如放火焚烧供应品。这需要时间。一整晚,一个间谍都能造成很大的伤害,这就是为什么有额外的缓解功能(其他哨兵,禁止在营地内游荡的规则,宵禁等等)。常规密码更新迫使攻击者在试图传播破坏时重新获取新密码。在我们现代的计算机世界里,事情不是这样的。攻击者将窃取您的文件和帐户,阅读和发送电子邮件,并通常在几秒钟内颁布他的恶意,因为所有这些都可以自动在很大程度上。
强制频繁更新用户密码是系统管理员的一种常见做法,但这是错误的。强迫用户每42天更改密码一次(这是Windows / Active中的默认值)只有假设以下两个属性保持不变时才有意义:
平均而言,在任何时候,邪恶的外来者都知道用户密码的比例是不可忽视的。攻击者在系统中逗留了几个星期,强制更新密码是对他们邪恶计划的一大障碍。实际上,这两种财产都不成立。因此,强行延长密码不会产生据称的好处。
另一方面,强制更新密码会削弱安全性:
用户必须生成和记住更难的新密码,并促进不利于安全的行为,例如将密码写在纸片上,或与同事共享密码。“忘记密码”的比率将更高,从而增加服务台的工作量。这反过来又会降低他们的识别标准,使他们更容易受到社会工程的影响。用户不会喜欢它,他们会更倾向于把系统管理员看作是一个控制狂,被避免或被规避,而不是一个有帮助的朋友,他的警告应该被注意。大多数实际的安全依赖于用户的自愿合作,任何无法解释的限制他们的日常工作都会严重损害他们的合作意愿。总之,有一些关于改变密码的建议是出于错误的传统。这是It安全领域中流传的神话之一,因为系统管理员是人,就像其他人一样,他们更喜欢应用所谓的“最佳实践”,而不是努力坐下来思考。
创新的回报方式夸大了这个问题:在安全领域,创新被追踪、追求、走投无路和可耻地被屠杀。如果一个系统管理员做了“每个人都做的事情”,而问题仍然发生,那么他就不会受到责备。然而,如果一个系统管理员做了一件聪明而新颖的事情,那么他就不能指望得到任何感谢;事实上,如果一次攻击成功了,尽管有了新的系统,创新者将成为整个企业的风景线。
你可以阅读一些关于这个问题的其他观点,在过去的问题中。