1. 密码安全现状
根据Verizon的《数据违规调查报告》,有81%与黑客相关的违规行为都利用了被盗密码或弱密码,也就是说,只需一名员工的弱密码就可以大大减弱企业的安全防御体系,降低黑客的攻击难度。此外,由 Centrify 进行的一项调查显示,受访的 1000 名IT决策者中,74%的入侵事件涉及特权账户访问。
而今年 RSAC2020 的现场调查数据显示:
- 接近四分之一的受访者(23%)使用相同的工作和个人账户密码,违反了行业最佳实践
- 超过五分之一的受访者(21%)仍将密码存储在手机、计算机或打印文档中,同样违反了行业最佳实践
注意,这项调查是针对安全行业人士进行的,普通企业员工的密码违规情况要比上面的数据严重得多!
如今,一位普通消费者都至少使用20个以上的账户,二十个不同的账户,二十个不同的密码,延伸出一系列的安全问题和安全隐患,甚至包括安全专家在内,都会犯下在不同账户中重复使用密码的低级错误。密码安全性已经成为在线账户安全的主要问题,导致数据泄露、账户接管、欺诈性金融交易、敏感数据泄漏、个人数据滥用等。
2. NIST 的十三条密码准则
NIST SP 800-63是美国国家标准技术研究院(NIST)2017年发布的数字身份验证准则的新修订版(2020年3月更新),其中提供了有关密码安全性要求的准则。简而言之,它是密码管理的一些最佳实践的整理,包括存储、使用和颁发。
2.1 不再需要定期重置密码
如果密码足够安全,就不一定需要经常定期重置。实际上,NIST 认为,定期重置不能解决密码安全的问题,因为很多人的定期重置,只是在原有密码的基础上,只做了微小的变动,或者只是在几个常用密码之间,进行周期性的轮换,这实际上是一种虚假的安全。
2.2 定义的最小密码字符数 - 8(用户生成)
用户定义密码的时候,长度至少要达到 8 位。
2.3 密码存储时允许的字符数至少为64位
系统设计时,不必对密码长度的最长进行限制,如果要限制,不能低于 64 位。
2.4 .允许ASCII可打印字符,包括空格和表情符号
密码设置时,允许所有的 ASCII 字符,甚至是表情符号。
2.5 系统自动生成的密码,最小密码字符数是 6
同时,用户第一次登录时,必须重设密码。
2.6 密码找回避免使用密码提示/安全问题
密码找回或安全问题,在目前社交媒体大行其道的时候,实际上大大降低了攻击难度,这种设计方案已经过时。
2.7 限制密码的复杂性要求
参考第 4 条,可以使用任意字符的密码,密码可用的复杂性大大扩展,所以 NIST 建议取消过去不太合理的复杂度要求。
2.8 鼓励2FA/MFA并避免2FA中使用SMS短信验证
鼓励多因子或双因子验证,但是明确提出,不要使用 SMS 短信验证(因为这种攻击越来越多)。
2.9 避免使用以下来源的密码
- 以前暴露的违规账号
- 字典单词
- 包含重复或连续字符的密码
- 特定于上下文的词,例如服务的名称、用户 名及其派生词
2.10 将失败登录尝试次数限制为一定数量
一定要限制登录尝试次数。
2.11 不要截断密码并始终将其存储在单向哈希中
密码存储的时候,不要限制长度,不能存储明文,这是对服务提供方与设计者提的要求。
2.12 引导用户使用指示器展示评估密码强度
用户设置密码的时候,通过密码强度指示器,告诉用户当前密码的强度。
2.13 通过盐化和单向哈希安全地存储密码,以防止密码猜测攻击
还是存储的问题。
网友评论