
近日,有报道称某大型行的人脸识别系统存在漏洞,造成 6 名储户被异地盗取上百万元现金。
表面上看,这只是银行人脸识别系统的过失,但未能有效校验异地操作才是细思极恐之处。
人脸识别可能被绕过、人脸信息可能被冒用,就连人脸识别系统也有遭劫持或篡改的风险。
这种时候,配合使用多因素身份认证(MFA)技术才是治标又治本。
01
MFA “老三样”
多因素身份认证 MFA (Multi-factor Authentication)是一种身份验证方法,用户需要提供两个或两个以上的认证因素才能访问某个资源,如应用程序、在线帐户或 VPN。
也就是说,MFA 不只要求用户名和密码,还需要一个或多个额外的验证信息,以降低网络攻击成功的可能性。
你有遇到过使用账密登录某个应用时,系统还要求填写短信验证码的情况吗?其实,这种一次性密码 (one - time passwords,OTP)就是 MFA 认证因素之一。
常见的认证因素大概可以分成三种类型:
类型 | 含义 | 举例 |
知识 | 你知道的 | 密码、验证码或安全问题 |
占有 | 你拥有的 | USB 设备、软件令牌或智能手机 |
内在 | 你固有的 | 人脸、指纹、声音或虹膜等生物特征 |
前面提到的 OTP ,就是既属于 “知识” 类,又属于 “占有” 类的认证因素。毕竟,没有号码所在的手机,你也收不到验证码(狗头)。
02
MFA “新三样”
作为开发者,曾经有一百个认证因素摆在我面前,我都想珍惜......但注重隐私的用户大概率不会答应。可一箩筐的认证因素,怎么知道应该请求调取哪一个呢?
随着机器学习的发展,MFA 技术也进化得更智能,发展出强化多因素身份认证的三种方法:
方法 | 分类 | 判定方式 |
基于位置的认证 | 地理位置 | 检测位置信息与白名单指定信息是否匹配 |
IP协议地址 | ||
基于上下文的认证 | 当前设备、行为、位置或网络等 | 根据上下文生成风险级别, 决定是否需要用户提供进一步的认证因素 |
无密码的身份认证 | 利用 FIDO2.0、WebAuthn 等技术 | 结合高保证因素与上下文信息判定 |
其实,行业内常说的 “自适应 MFA” 就是基于上下文的认证,也指基于风险的认证。这种方法能平衡安全需求和用户体验,因为风险是根据当前设备、行为、位置或网络这些 “上下文” 来计算的。
假设你晚上九点(非工作时间)在咖啡店(非办公地点)连接店里的 Wifi (非专用网络)登录公司的系统,那么可能会被要求额外提供 OTC。如果你明天一早在办公室尝试登录,可能只需要账密就行。
国内一些 SaaS 厂商就融合了自适应多因素的能力,例如 Authing 可以针对不同的场景灵活的使用不同的多因素认证,比如一次性密钥,动态验证码,人脸识别和指纹识别等等。
此外,Authing 还采用了无密码传递的理念,设计出例如单点登录 SSO 的功能。也就是说,一处完成登录即可进入所有业务系统,且过程中不传递密码。
说一千道一万,多因素身份认证 MFA,不只在 “多”,还得做到 “准” 才行。