坏家伙们通常会用四种基本的方法得到你的密码:
(A) 直接询问,所谓的“钓鱼”和“社会工程学”的攻击仍然在进行,并且一直有效
(B) 试着用字库来匹配提示框,希望碰到好运气
(C) 获取加密之后的密码或哈希码,反过来进行解密
(D) 使用keylogger等恶意软件在你在电脑中输入时获取密码
这四种情况不会因为你每隔90天更改了一次密码就从你身边走开。如果坏人们无法在几天内攻破哈希码(C),他很可能去寻找更容易的攻击目标。攻击(B)也是速战速决型,坏人们通常只使用前几百个单词,如果无效的话马上就会转向其他更容易的猎物。如果(B)或(C)攻击成功,或者攻击者通过更简单的(A)或(D)获知密码,那么他们平均只需要45天就足以把你的银行帐户弄得一干二净,或者把你的电子邮件地址变成发送垃圾邮件的据点。
在过去25年左右的时间里,密码过期的概念没有什么变化。信息安全技术人员、审计人员、PCI、ISO27002和COBIT等等的要求都保持不变,但威胁已经改变了不少。通常,密码脆弱的用户只会用另一个脆弱的密码来替代。而强迫一个密码强度已经很高的用户更改密码最终反而会惹恼他而使用简单的密码。
那么90天的密码更改周期到底有什么意义呢?有一个实际的好处。那就是如果有人有你的密码而他们想做的一切只是偷偷的阅读你的电子邮件,那么你改变密码可以阻止他们永远这样做下去。定期更改密码并不能抵御那些想要窃取你的机密的恶意攻击者,但它确实能让你摆脱那些偷偷摸摸的潜入者或窥探者。没错,这是好的。但是,这点好处是否值得去强迫用户去不嫌麻烦的每90天更改一次密码呢,我有些怀疑。
信息安全风险管理的主要工作应该是识别威胁和漏洞,然后选择对策。但是,如果选择的对策实际上并不太可能降低所识别的威胁的话,那么它在安全工作中也是于事无补的。
当然,各方提供的“最佳实践标准”和审计部门的专员们会迫使我们用它。
以下是评论:
我为一家财富500强企业引入了“每90天改变你的密码”的规则,我来做个解释。许多人在多个系统上使用相同的密码。我发现其中有一台系统允许用户查看名称目录中隐藏在文本域中的哈希密码,这是产品本身的弱点,我们发现这个哈希算法很容易破解,于是立即改变了哈希算法并且做出了90天的规则,这样能够确保密码哈希的持续清洁,并且鼓励员工在外部网站使用与企业内部不同的密码。
缓解攻击不会改变它的发生概率,但能改变攻击成功的可能性。你所做的假设中所有的密码窃贼都会在试上几次强力攻击后放弃,一般来说是这样,但并不总是。你暗示我们(审计部门)看不到不断变化的威胁是不对的,每90天的周期仍然太长,考虑到今天的处理能力。你必须采取长度、复杂性、历史以及各种各样的帐户锁定策略。