Answers:
这与SANS日记不同:
密码规则:每25年更改一次
有一个实际的好处。如果某人拥有您的密码,而他们所希望的只是阅读您的电子邮件而未被发现,那么他们可以永远这样做,除非您最终更改了登录密码。因此,定期更改密码对防止他人闯入并随您的商品进行盗窃并没有多大帮助,但是这样做确实为您提供了摆脱可能访问您帐户的任何潜行者或窥探者的机会。是的,这很好。但是,仅凭这种好处是否值得麻烦,并提到了强迫用户每90天更改一次密码的缺点,我对此表示怀疑。
猜测时强制更改密码(通过始终对所有用户运行密码猜测程序)。
当回答“为什么”时,很难与“您必须更改密码”争论不休。是“因为我们能够盲目猜测”。它会自动奖励那些选择难以猜测的密码的人,并教您的用户哪些密码是弱密码。如果他们选择“ password1”,它将在他们一次登录之前过期。如果用户选择一个16个字符的随机大小写混合字母数字密码,您将永远不会猜到它-其他任何人也不会。让我们将其保存很长时间,他们甚至可以记住它。
这是一个权衡。需要频繁更改密码确实会导致较低质量的密码。甚至对此有研究。
话虽这么说,我发现阻止用户共享密码的唯一可靠方法是要求定期更改密码。我的经验表明,90天似乎是可用性和安全性之间的不错折衷。如果您再花更长的时间,人们就会开始越来越依赖于共享密码,并且您最终会得到“ November09”,“ December09”。
我认为这种做法完全没有好处。
强大的密码更为重要。严格来说,我的意思是9+个字母数字+特殊符号,或15+个仅[az]的非字典式密码/短语(这是基于最近对使用Amazon EC2暴力破解密码的成本的研究)。
远程访问的系统必须在所有公开的服务上都装有蛮力检测和预防软件(例如fail2ban)。IMO,这比常规的密码更改策略重要得多。
基本问题是,作为安全机制的密码会发臭。
如果您要求人们经常更改它们,他们会写下来。如果您要求他们使用30个字母密码(至少3个数字,4个大写字母和一个控制字符),他们会忘记它们或将其写下来或做其他愚蠢的事情。如果简单,用户将使用笨拙的密码,例如bunny7或Bunny7。他们将对所有内容使用相同的错误密码,包括其色情帐户和hotmail帐户。
我喜欢诸如Mobile OTP之类的工具,该工具允许用户将手机用作两步验证工具。
从长远来看,我们可能会以某种方式落入以加密证书作为用户标识机制的世界。诸如OpenID和CAS之类的东西简化了用户身份验证,并允许方便的单点登录。
从长远来看,最好的选择是减少用户颁发凭据的次数-摆脱“ HR”密码,“时间表”密码和“ CRM”密码。将它们统一为一个通用的身份验证基础结构,该基础结构要求用户一次颁发其凭据。然后让他们使用诸如MobileOTP或使用两因素身份验证的RSA SecurID之类的东西。
在短期内,密码策略将成为宗教战争的主题。只需执行老板要求您执行的任何操作,如果您是老板,请根据用户群和预期的安全配置文件做出判断。
祝好运!
这种作法并非完全没有用,但很久以前就变得很重要。辩论这项政策实际上是适得其反的,因为它将注意力从目前更为严重的威胁转移开来。
考虑:
如果您使用Windows / AD,并且一个帐户中没有选中“帐户是敏感帐户且无法委派”的复选框,则可以通过模拟使用该帐户,并且不需要密码。执行此操作的代码很简单。
如果某人的Windows工作站受到安全漏洞的威胁,则可以使用其内存中的Windows安全令牌访问其他计算机。同样,不需要密码。
顺便说一句,第二个原因就是为什么您只应使用与日常普通用户帐户不同的帐户访问服务器。还要注意,即使是最强大的两因素身份验证机制,这两种情况也完全无法实现。
关于密码安全性可能发生的最好的事情是停止辩论它,而将注意力集中在更现代和更严重的威胁上。
更多信息:
查看卢克·詹宁斯(Luke Jennings)的演讲,“一个令牌来统治所有人”:
http://eusecwest.com/esw08/esw08-jennings.pdf
Insomnia Shell-破坏ASP.Net服务器上的令牌所需的代码示例:
http://www.insomniasec.com/releases/tools
如何:在ASP.NET 2.0中使用协议转换和约束委派
http://msdn.microsoft.com/en-us/library/ms998355.aspx
搜索“没有密码”。
密码保持不变的时间越长,就越容易被泄露,这仅仅是因为在可能被泄露的情况下(给定无限长的时间,一切可能),会有更多的机会。由于用户已经习惯了旧版本,因此将来也很难更改。另一个风险是,如果它遭到破坏并且用户不知道这一事实,则可能会持续严重滥用用户帐户。定期更改将至少缓解这种情况,因为下一次强制更改密码将使受破坏的密码无用。
以我的经验,最有可能导致用户写下密码的情况是您的安全基础结构中缺乏联合思考,例如拥有多个不同的系统,所有这些系统都需要使用自己的唯一用户名和密码组合。向用户扔掉其中的5个,您将得到带有复仇的黄色粘滞便笺综合征。
合理的密码策略允许用户选择易于记忆但难以破解的密码,再加上一些良好的用户培训,可靠的集成身份验证以及不错的锁定和到期策略,所有这些均由明确禁止密码共享的AUP支持最好的方法。
如果您要缓存凭据(大多数人会这样做以确保可用性),那么这是必须的。如果计算机在物理上被盗,并且启用了凭据缓存,则小偷可以将计算机强行从网络中删除,而不必担心会激活帐户锁定策略。然后,它们具有对您的网络资源的有效凭据。定期更改这些密码可以最大程度地减少这种损坏。
这就是您从不使用特权帐户登录,始终以受限用户身份登录并提升个人提示的确切原因,这可以防止在发生盗窃/侵入事件时强行特权特权凭证。
我正处于从未要求更改密码的阵营中。或者如文章所述-每隔25年-是的,那我就死定了。好。这就是为什么...我在工作时要记住12个密码。它们中的大多数都会更改,而更改的时间表则完全不同。它们都有不同的强度要求。弱小的人又该如何应对呢?我见过的几种方法:将它们写在白板上。将它们写在纸上,并将其放在未上锁的抽屉中。或我的首选方法:将它们存储在相当不安全的Google文档电子表格中。您无法说服我,这些方法(非常常见)中的任何一种都不能完全抵消要求更改所带来的微小安全益处。
我有时间写这篇文章,因为我正在等待IT支持人员解锁我的一个帐户。显然我上次没有正确更新电子表格。是否有一项研究可以计算因这种胡扯而损失的BILLION $$$?