2. 风险评估基础:密码强度评估标准、常见弱密码类型、密码泄露途径
做密码迁移之前,我一直觉得“风险评估”是审计才关心的事。直到有一回,我在一家金融客户现场做密码策略整改,发现他们号称用了14位复杂密码,迁移后却被新系统直接标记为“弱密码”。为什么?因为那14位全是小写字母加一个固定前缀,熵值低得可怜。那之后,我花了很长时间把风险评估这套东西捋清楚了。说白了,你连风险在哪都不知道,谈什么迁移优化?
2.1 密码强度:到底怎么才算“强”?
密码强度不是靠感觉判断的。我习惯用三个维度去拆:长度、字符集、打破规律。长度管下限,字符集管可能性,打破规律管对抗猜解——这三点缺一个,强度就掉一档。
| 评估维度 | 说明 | 典型反例(我在项目里见过的) |
|---|---|---|
| 长度 | 建议≥12位,少于8位风险极高 | 某系统要求10位,但用户填了“1234567890” |
| 字符集多样性 | 大小写+数字+符号,至少3类 | 全是小写字母的“password”变体 |
| 不可预测性 | 无字典词、无键盘序列、无个人信息 | “Qwerty123!”——键盘顺序+常见后缀 |
评估标准,我推荐参考NIST SP 800-63B的修订版:允许长密码(甚至到64位),不强制周期性轮换,但必须检查是否出现在已知泄露库中。国内一些等保标准也在往这个方向靠。嗯,这里要注意:不要迷信“三个月必须改一次”,如果密码本身足够强,频繁改反而催生弱密码——我就见过员工在密码后加“!1”循环使用的。
2.2 常见弱密码:你猜用户最喜欢用什么?
每次做安全培训,我都会先问一个问题:“你身边的同事有多少人用‘123456’或‘password’?”沉默几秒后,总会有人偷笑。我曾在一次内部审计中拉过公司AD域的密码哈希,用John the Ripper跑了两分钟,就破解了23%的账户。原因很简单——人们总觉得自己不会被黑。
我把弱密码归为以下几类,你在做迁移前的风险排查时可以直接对照排查:
- 字典型弱密码:“admin”、“welcome”、“Passw0rd”、“Qwerty123”——这些在Rockyou.txt里出现的频率极高。
- 序列与重复:“abcdef”、“aaa111”、“1111aaaa”——键盘顺序、连续数字、重复字符,都是暴力破解优先测试的。
- 个人化弱密码:生日、手机号、姓名拼音、公司名称+年份。例如“zhangsan1990”、“Company2023”。我在某次渗透测试中,仅凭LinkedIn上的员工生日信息就猜出了3个域管理员密码。
- 常见模式变体:“Password1!”、“Admin@2023”——看似复杂,实则“大写+小写+数字+符号”的固定格式已经被破解工具内置为规则。
- 重复使用密码:同一个密码在多个平台使用。一旦一个泄露,其他全完。迁移时如果发现用户把内部系统密码和自己的微博密码设成一样,就必须标记为高风险。
2.3 密码泄露途径:你的密码是怎么跑到黑市上的?
很多人觉得密码泄露是黑客“攻破”了公司的服务器。实际情况复杂得多。我简单梳理了常见的泄露路径,你一看就明白:
- 数据库被拖库:最直接的路径。攻击者利用SQL注入、未授权接口或第三方组件漏洞,拿到用户密码哈希表。如果密码没加盐(salt),存储的是MD5或SHA-1,那几乎等于明文。
- 撞库与凭证填充:攻击者从其他网站(比如某某社交平台)拿到一批邮箱+密码组合,拿到你公司系统试登录。这就是为什么密码迁移时一定要检查用户是否存在跨站重复使用。
- 社会工程与钓鱼:伪造登录页面,诱导用户输入密码。我曾经见过一个伪装成公司IT部门密码过期通知的钓鱼邮件,一天内就骗取了几十个域账号。
- 中间人攻击与网络嗅探:如果密码在传输过程中没有启用TLS加密,或者企业内部WiFi不安全,攻击者可以用Wireshark直接抓到明文密码。迁移前的安全审计必须检查HTTPS覆盖范围。
- 键盘记录与木马:员工电脑被植入恶意软件,直接记录键盘输入。这类攻击很难事前防御,但可以通过定期终端扫描和EDR来降低风险。
- 物理侧信道与丢设备:笔记本电脑丢失、办公室便利贴上的密码、甚至是摄像头拍到的键盘输入。嗯,这不是玩笑,我曾在客户办公桌上见过贴着“WiFi密码:Test123”的便签。
2.4 风险评估核心逻辑:一张图说清楚
下面这张图是我自己总结的密码风险评估流程。你迁移前照着走一遍,心里就有底了:先评估密码强度,再识别弱密码类型,然后分析泄露途径,最后综合出风险等级。注意,每个步骤之间都有反馈回路——比如识别出弱密码后,可能反向要求升级评估标准。
你看,流程其实不复杂。但我在实际项目中经常发现有人跳过第二步“弱密码识别”,直接拿强度评分去做风险评估。结果呢?强度评分为“中”或“高”的密码,在已知泄露库里一查——早就被卖过好几轮了。强度高不等于没泄露,这个坑你得记住。