我们从安全管控产品的定位,延伸到现在企业对于信息安全的重视层度,就有人提到了密码的管理。我们IT部的经理就说起最近他碰到的一个客户的市场人员向他抱怨“微软的密码管理策略真的是反人性”。我们听到这个都笑了。当然,事实场景是微软只是提供了密码管理的机制,而最终执行的策略还是取决于企业自己的配置。
于是我们马上切换到自身的场景,我们的公司以及我们的几个重要客户一直执行着非常严格的密码管理策略,我相信比这位抱怨的客户所面对的规则,有过之而无不及。
大致的密码管理策略:
1、密码8位以上
2、必须有大小写字母、特殊字符还有数字
3、每三个月失效需强制修改
4、设定密码两年内不能重复
确实,我自己这么多年来还着实碰到了几次有意思的场景。比如重设密码,早些年我给某个测试环境的账号重置密码,就被折磨得够呛。因为是Linux的命令行式交互,体验和出错提示也一般,而且涉及到多台服务器的同步。历经了原始密码输错、新密码和之前重复N回、特殊字符N次出错(一些有转义功能的特殊字符都得回避)等各类场景,甚至一度怀疑是否密码重置系统本身出了故障或是和我过不去。
整整半小时,才终于在和这套修改密码系统的搏斗中狼狈胜出。其实,要设置一个符合它规则的密码并不难,难度在于设置出来之后还能够让自己记得住。记密码是一个技术活,我最得意的就是我曾经有一张银行卡,初始密码是一组没啥规律的数字,我就一直没改它,就这么硬记了16年直到这个月把它销掉;期间忘记了无数次,但是又无数次记起来,没有一次劳烦银行帮忙改密码。
回到我们的讨论,我们老板非常有劲地介绍他的密码管理心得:就是设定自己的一套Pattern,基于这套Pattern来重设密码和记忆密码,保证Pattern的运作2年内不重复。讨论现场,我和安全测试团队的小伙伴就提出有规律的密码生成方式会带来一些风险,给黑客或者有心人提供便捷。
而实际上,我自己的密码管理策略也是类同的;而且我相信在我们严格密码管理体系中待久了的老伙计们应该都有一套密码管理心得,很可能大家都大同小异。比如我的密码就用了一个很基础的算法,只是驱动算法得有一个简单的“种子”,于是我的使命就是记住最新的“种子”。
重点是!要做到这一点也不容易,“种子”很可能会被忘记,所以我偶尔还会把种子通过明文的形式放在一些不起眼的地方。从安全的角度,如果有心人去摸索,收集我的个人信息、观察我的喜好、偶尔偷瞄一下我输手机开机密码、有机会看到我的一些纸片文字(特别申明:以上纯属虚构、不构成本人密码策略要素,读者的密码策略如有被猜中,请自行修改和强化),综合分析再加上常规的暴力破解技术,要攻破也不是特别难的事情;当然这是另外的话题了。
很不幸的是,很多时候我真的把“种子”忘了,而且年纪大了以后,甚至连线索都不记得留过。于是,就有那么些时候,比如某个长假过后、比如刚重置密码后,会突然把密码给忘记了。
在企业中我们还是可以找IT部门重新初始化密码。有一次,我忘记了密码而且还因为试错多次把账号给锁定了,于是打电话给支持部门请求帮助;在经历了多重考验向他们证明我是我之后,操作员直接回复我说,“您的账号已经解锁,请试一下”。我只能说,我不小心把密码给忘记了,得重置密码;对方直接回了句“密码不是每天都用的么,怎么会忘记呢”。碰到这么敬业和较真的接线员,真是大写的尴尬啊。
为了避免这样的尴尬,我们得找到自己的办法。我想起了多年前,我们美国的一位同事教我的一招:因为他在写代码之前是弹钢琴的,手指弹钢琴会有记忆很多时候是不经过大脑思索的,而他觉得敲键盘也是如此;于是,某次他实在想不起密码的时候,就活动一下手指,闭上眼睛,手指摸到键盘后,噼里啪啦一下,就登进去了。
于是在某个早上,在我已经连续试了两个我记忆中的密码都失败后,我决定“铤而走险”试一下这一奇招。我起身去倒了一杯水,慢慢地喝几口,然后做一下手指屈伸运动,让身心手指都放松,很自然地拉过键盘,下意识地“噼里啪啦”一番,随着流畅地回车键按下去~~~然后,你猜~~