打开本文意味着你理解信息安全的重要性,并且希望获取行业最佳实践来保护你所在组织的信息安全。本文将带你了解多因素认证(MFA:Multi-Factor-Authentication)对于企业信息安全的重要性以及实施方法。
多因素认证(MFA)已被证实是目前抵御绝大多数与密码泄漏相关攻击的最佳实践,微软研究表明,多因素认证(MFA)能有效阻止 99.9% 的密码泄漏事故。多因素认证是指用户需要提供一种类型以上的因素进行身份验证。通常可以分为四类因素,如下表所示:
注意,使用多个相同因素类型的相关凭证并不能构成多因素认证,例如:使用自有知识因素中的密码和安全问题不能构成多因素认证,而需要使用多个不同因素的凭证。例如:在最常见的支付场景中,当用户进行高额交易,系统不仅需要验证支付密码,通常情况下还需要额外进行外部口令验证,如手机验证码或 U 盾口令等。这种生活中常见的例子屡见不鲜。可见,多因素认证已经广泛应用于很多敏感的身份认证过程中。
01 为什么要使用多因素认证(MFA)?
鉴于数据泄露事故频发,伴随社会数字化程度越来越高,相关安全隐患和事故只会越来越多。对于企业来说,员工或用户信息泄漏意味企业将承担巨大的信誉和直接经济损失以及法律风险。其实越来越多企业已经意识到信息安全的重要性,但碍于以下几个原因始终无法有效实施:
-
技术力量受限,自建成本较高
-
“过度代偿”导致失衡,无法平衡安全性和用户体验
-
已经实施了一些安全措施,但没有监测系统,无法评估其效果
以下数据印证在几乎每个人身上,简易密码和密码复用等问题已经存在许久。但这并非用户的问题,越来越多的应用/系统/页面需要用户重新注册账号,用户不得不使用相同的密码来确保其不会遗忘。
-
一项调查发现,91% 的受访者声称了解在多个账户中重复使用密码的风险,但 59% 的人承认无论如何都会这样做
-
普通人重复使用某个相同密码高于 14 次。
-
72% 的人在个人生活中重复使用密码,而近一半 (49%) 的员工在每 90 天更新一次公司密码时只是更改或添加一个数字或字符到他们的密码中,这导致强制修改密码变得无效
-
73% 的用户在个人和工作帐户中重复密码
-
根据 Verizon 数据泄露调查报告,81% 的黑客相关泄露事件都是密码泄露造成的
即便是你已经知道了这些数据,并且决定开始为你的企业/用户部署多因素认证(MFA),但你仍然需要了解的使用不恰当的多因素认证(MFA)解决方案将会带来以下常见的问题:
-
要求用户持有特定硬件的 MFA 类型可能会产生大量成本和管理开销
-
如果用户丢失或无法使用他们的其他因素,可能会导致用户无法进入账户
-
MFA 给应用程序带来了额外的复杂性
-
许多 MFA 解决方案向系统添加外部依赖项,这可能会引入安全漏洞或单点故障
-
为允许用户绕过或重置 MFA 而实施的流程可能会被黑客利用
-
实施 MFA 会增加用户与系统间的摩擦,将导致用户体验下降,用户流失等问题
通用建议
对于已经实施或即将实施 MFA 的企业来说,关于上述 MFA 可能遇见的问题,有以下几个建议:
在应用程序中具体何时以及如何实施 MFA 取决于许多不同的因素,包括应用程序的威胁模型、用户画像以及对用户的访问控制级别。需要对不同应用不同场景进行分析,以下建议通常适用于大多数应用程序
-
为用户提供使用TOTP 应用程序帮助用户快速使用 MFA
-
需要具备管理特殊权限或者高级别权限用户的 MFA
-
允许在公司 IP 范围内(或常用 IP 地址)不需要使用额外 MFA
-
为用户策划安全、完善的「重置 MFA」流程
在什么时候需要使用 MFA?
最常见的场景就是在用户登录认证的时候,但如文章开头所说,在用户进行敏感操作的时候适当添加 MFA 也非常有必要,例如:
-
修改密码或安全问题
-
修改关联的手机号或身份信息
-
禁用 MFA
-
更改权限相关的操作
但以上方案并不能完全解决根本性的交互摩擦问题。
02 自适应多因素认证(Adaptive-MFA) 是平衡安全和用户体验最佳实践
为了解决上述问题,自适应多因素认证(Adaptive MFA)在多因素认证(MFA)的基础上增加了上下文识别,能够根据当前安全状况自动判断是否需要增加额外的因素认证。验证流程示意图如下:
所谓上下文识别,即对用户当前行为、来源、位置、操作等信息进行判断,并根据预设的策略进行验证。例如:
-
用户行为:如是否来自常用的登录地点;是否多次输入错误的账号密码;等异常用户操作
-
请求来源:对当前请求来源进行判断,如硬件设备信息、操作系统等
-
位置感知:位置感知分为虚拟位置和物理位置
传统的多因素认证通常在用户登录注册后要求用户进行二次因素认证,如发送短信验证码或者 OTP 口令等。但自适应多因素认证将评估每次登录的风险,并根据风险级别决定是否要求用户进行二次或多次因素认证。例如:
-
发出请求地 IP 地址的风险,是否来自陌生 IP、或高风险 IP
-
陌生地理位置发出地请求,如异地登录等
-
发出请求地设备是否为常用设备还是陌生设备等
但基础的自适应能力并不能完全覆盖现代数字化各类业务场景需求。在上文为什么要使用多因素认证中我们提到了多数企业面临的问题:
1.技术力量受限,构建成本较高
Authing 为用户提供了快速接入和一键开关多因素认证(MFA)能力,可以针对不同应用、不同场景自定义多因素认证策略。
2.无法平衡安全性和用户体验
自适应多因素认证的优势在于,只针对高风险或敏感操作的用户要求进行多因素认证,而对于经常使用同一设备和相同位置访问应用程序的用户永将不会被额外要求其它认证。
3.已经实施了一些安全措施,但没有监测系统,无法评估其效果
通过 Authing 提供的用户行为日志可帮助您快速了解风险级别和对用户体验的影响。
除此之外,Authing 身份自动化编排引擎,在以上基础之上,允许更自由的实施多种安全策略,通过模块化的编排能力,管理员可以自由地将多因素认证(MFA)等安全策略放置在任何业务节点当中,不再需要研发为不同的业务线一个个的编写安全策略,将极大降低企业研发成本和员工工作效率。