多因素身份认证 (MFA) 是保护企业 IT 资源访问安全的一种关键工具,也是零信任安全模型的核心组成。特别在远程办公以及数据泄露事件层出不穷的背景下,越来越多企业都开始考虑实施多因素身份认证策略。

根据近期一项对 IT 专业人员的调查,52.6%的中小型企业已经要求为所有应用程序和系统登录添加多因素身份认证。其中手机推送认证形式(无密码认证)的二次认证是保证良好用户体验的绝佳选择,但与其他认证形式相比又如何呢?

本文将从企业实施的角度分析多因素身份认证的最佳实践,希望能找到同时满足决策者和终端用户的方案。

1. MFA 是什么?企业为什么要使用?

多因素身份认证也称多因子身份认证(Multi-Factor Authentication,MFA),是在传统登录认证时使用的用户名密码之外增加额外认证因素的做法。通常,这些因素可以分为以下三类:

  • “用户知道的”:包括用户名密码凭证,以及密保安全问题等
  • “用户拥有的”:与设备相关,例如手机上的令牌或硬件令牌
  • “用户天生的”:一般指生物识别技术,人脸、指纹、虹膜。

根据美国最大通信公司 Verizon 在2021年发布的《数据泄露调查报告》显示,61%的数据泄露都涉及密码凭证。由此可见,密码作为单一验证因素时并不充分,企业还是会因数据泄露造成损失。要解决这一问题,在登录时添加二次认证就能大大提升安全性,数据表明多因素身份认证能使账号被盗的可能性降低99.9%。那么用于二次认证的因素对于安全保护的效果是否有不同影响呢?对此,谷歌安全博客发现,不同形式的验证因素对于账号接管攻击(ATO)的防护效果确实存在差异:

上图详细说明了六种最常用多因素身份认证因素的防护效果对比,主要分为基于设备和基于知识两大类。可以看到基于设备的验证因素中,设备安全提示的防护效果达到了100%,而手机推送认证(无密码认证)就属于设备安全提示这一类别,下面将具体介绍手机推送认证形式,以及与其他形式的验证因素相比有何优势。

2. 什么是手机推送形式的多因素身份认证?

手机推送形式的多因素身份认证需要用户持有智能手机,并利用手机上的消息推送功能来验证用户身份,因此属于“基于设备”的多因素身份认证,因其无需输入动态密码,也属于无密码认证形式。在 PC 端登录应用或系统时,用户在输入用户名和密码后,只需解锁手机并在推送出来的新消息中点击确认按钮就能批准 PC 端的访问请求。

这一验证形式对于终端用户来说十分方便,对 IT 管理员来说也降低了部署成本,因而广受欢迎。在简单说明了手机推送验证的过程后,下面将介绍除了手机推送以外的其他验证因素,进一步比较各自的优缺点。

3. 推送认证以外的 MFA 因素

     1)短信验证

短信验证也是如今广泛采用的一种验证因素。用户提交密码凭证后,会收到短信或邮件形式的验证码,用户还需要输入正确的验证码以后才能完成登录。

从上一节的图表可以看出,短信验证能有效防止自动和批量的网络钓鱼攻击,但难以应对针对性的账号攻击,原因在于短信验证需要第三方网络在验证服务器和终端用户之间充当中间人,为网络攻击提供了更多可操作空间,增加了安全风险。

相比之下,手机推送验证是直接在用户的智能手机上使用验证器APP实现的,不需要用户输入验证码,不仅优化了用户体验,也节省了验证时间。与短信验证相比,使用手机推送验证的用户每年在登录上花费的时间要少13分钟。

    2)时间型动态口令(TOTP)

时间型动态口令(TOTP)是一种随机生成的身份验证令牌形式,通常是通过智能手机APP创建,因此和手机推送一样也属于“基于设备”的验证因素。

动态口令每隔一段时间不断刷新,用户必须在刷新前输入正确的验证码,否则就会失效。这相当于在系统和攻击者之间增加了大型缓冲区,攻击者需要同时获取用户凭证和持有手机上的动态口令才能破解账号,因此动态口令比短信验证更安全,也更容易管理。

然而,有些用户认为动态口令过于繁琐,体验不佳。但是多因素身份认证已经为用户添加了额外验证步骤,而动态口令与其他形式的验证因素相比已经是相对轻巧有效的方案了。

手机推送和动态口令在安全性上大致相同,在用户体验方面稍稍优于后者。一般而言,身份验证器APP都会同时支持这两种形式,允许用户按需选择,这在部署多因素身份认证中是很重要的考量。

    3)硬件令牌

硬件令牌就像数字版的密钥锁。用户持有的每个硬件令牌都内置独一无二的密钥,只要用户不丢失,身份验证就应该是高度安全的。谷歌的数据图也证明了硬件令牌的安全性,可以完全阻止几种主要的账号攻击。硬件令牌虽然安全性较高,但在部署上也有不少问题:成本高、维护难、易丢失。维护难是指实施和绑定硬件令牌工作量巨大;易丢失会导致终端用户账号被持续锁定,只有找回令牌才能解锁。

相比之下,手机推送的验证形式性价比更高,更适合大规模实施,安全性也几乎没有差别。

    4)生物识别

过去,生物识别似乎只存在于科幻小说,主要有视网膜扫描和语音或面部识别。如今,生物识别已经成为现实。很多人都习惯用指纹识别或面部识别解锁手机或笔记本电脑。 尽管在目前的企业环境中大规模管理生物识别数据仍然存在很多问题,但通过手机上的身份验证器APP,生物识别也自然而然加入了验证环节中。例如,用户要接收推送通知必须先解锁手机,而现在大多数人解锁手机都会用到生物识别,相当于设备自带的额外安全层。

3. 如何选择手机推送的多因素身份认证方案?

IT 企业可以选择多种解决方案在用户群中强制执行手机推送的认证策略。而在考虑采用哪种解决方案时,需要重点关注以下三个问题:

  • 有哪些 IT 资源需要保护?
  • 所选方案如何与现有工具交互?
  • 方案成本是多少?

基于以上三点,身份目录即服务(DaaS)可提供更适合现代化 IT 架构的解决方案。基于 SaaS 模式,提供云 MFA 能力,具备目录服务、RADIUS 认证模块、统一策略管控中心,管理员可以轻松管理几乎所有 IT 资源的身份认证,包括云和本地资源。

其中,云 MFA 模块支持手机推送认证、手机APP 令牌等多种认证形式,兼容 iOS 和安卓系统,不仅适合云应用和本地应用的手机推送认证,也可用于VPN、云桌面等网络设备的身份验证,免去安装部署过程,按需订阅付费,更经济更高效。

(本文来源于宁盾,仅供学习和参考,未经授权禁止转载和复制。如欲了解多因素身份认证更多内容,可前往宁盾官网博客解锁更多干货)

多因素身份认证之手机推送认证相关推荐

  1. 老板来了:人脸识别 + 手机推送,老板来了你立刻知道!

    背景介绍 学生时代,老师站在窗外的阴影挥之不去.大家在玩手机,看漫画,看小说的时候,总是会找同桌帮忙看着班主任有没有来. 一转眼,曾经的翩翩少年毕业了,新的烦恼来了,在你刷知乎,看视频,玩手机的时候, ...

  2. Python人脸识别+手机推送,老板来了你就会收到短信提示

    前言 在你上班的时候刷知乎,看视频,玩手机的时候,老板来了!不用担心,不用着急,基于最新的人脸识别 + 手机推送做出的 BossComing.老板站起来的时候,BossComing 会通过人脸识别发现 ...

  3. 技术分享|手机推送原理剖析指南

    源宝导读:本文旨在对手机推送原理进行剖析和阐述,对业务开发做一些方向性的解惑. 一.手机推送的基本概念 --什么是手机推送? 百度词条:手机推送服务是指服务器 定向将信息实时送达手机的服务 词条中有2 ...

  4. Python实现人脸识别 + 手机推送功能,老板来了你就会收到短信提示

    前言 在你上班的时候刷知乎,看视频,玩手机的时候,老板来了!不用担心,不用着急,基于最新的人脸识别 + 手机推送做出的 BossComing.老板站起来的时候,BossComing 会通过人脸识别发现 ...

  5. hello python jpush_Python人脸识别 + 手机推送,老板来了你就会收到短信提示

    原标题:Python人脸识别 + 手机推送,老板来了你就会收到短信提示 前言 在你上班的时候刷知乎,看视频,玩手机的时候,老板来了!不用担心,不用着急,基于最新的人脸识别 + 手机推送做出的 Boss ...

  6. 中国电信189邮箱手机推送功能评测

    中国电信189邮箱手机推送功能评测 笔者由于工作的关系,对时下流行的手机PUSHMAIL功能较感兴趣,正好手头上有中国电信3G的测试机器和号码,于是对中国电信189邮箱的PUSHMAIL功能进行了一番 ...

  7. Python 人脸识别 + 手机推送,老板来了你就会收到短信提示

    前言 在你上班的时候刷知乎,看视频,玩手机的时候,老板来了!不用担心,不用着急,基于最新的人脸识别 + 手机推送做出的 BossComing.老板站起来的时候,BossComing 会通过人脸识别发现 ...

  8. 微信公众号配置 Token 认证以及消息推送功能

    前言 公众号服务配置 Token认证 如何配置 Token 认证接口 公众号获取网页授权及用户信息 导向 网页授权 关注后消息触发授权 公众号推送模板消息 模板消息功能插件 推送模版消息接口介绍 获取 ...

  9. 用JPUSH极光推送实现服务端向安装了APP应用的手机推送消息(C#服务端接口)

    这次公司要我们做一个功能,就是当用户成功注册以后,他登录以后要收到消息,当然这个消息是安装了我们的手机APP应用的手机咯. 极光推送的网站的网址是:https://www.jpush.cn/ 极光推送 ...

最新文章

  1. vs2008、vs2010、vs2012中查看变量在内存中的内容的方法
  2. Kotlin学习-基础知识点
  3. 华夏基金专访神策数据创始人兼 CEO 桑文锋,金融科技数字化趋势认知传递
  4. reactjs antd(ant-design)安装、基本使用及css样式的按需引入
  5. HEVC支持苹果HLS的几个关键问题
  6. 读源码,对开发者重要吗?
  7. Spark Structured SQL : JDBC写入Oracle
  8. DateFormat是线程不安全
  9. 【论文写作】城市酒店入住信息管理系统中客房各项功能如何写
  10. Hive压缩存储性能测试
  11. Ros学习笔记(一)创建工作空间
  12. [原译]Lambda高手之路第二部分
  13. 计算机没有显示光盘图标,电脑光驱图标不见了怎么办
  14. 一步一步教你如何写开发文档
  15. 小甲鱼python教程视频怎么样-为什么我看完小甲鱼的python视频还是不会写呢?
  16. OA流程审批系统,即刻告别纸质化办公
  17. 重装系统缺少计算机所需的介质,win10重装系统提示缺少介质,显示缺少介质解决方法...
  18. 分布式定时调度-xxl-job
  19. 容灾恢复 | 记一次K8S集群中etcd数据快照的备份恢复实践
  20. “2.17亿中国电信”拿下国家税务局云平台项目,H3C却是最大赢家

热门文章

  1. where 空集_MySQL where 条件的这个坑你碰到过没
  2. 微信小程序开发-微信支付功能【WxMaService 获取openid,WxPayService建微信订单,接收微信支付异步通知回调方法,附有完整前后端代码】
  3. 三、Bugku----手机热点------流量分析题------obex
  4. 用AI视觉芯片打造舱内舱外全开放解决方案
  5. eset找不到服务器更新失败,ESET NOD32连接到服务器以更新常见的错误检测方法
  6. Android 复杂的手势处理利用GestureOverView
  7. 最近打算更新一篇图片上传的文档!(一直更新得比较缓慢)
  8. gcc利用-m32编译报错问题处理
  9. SSM(spring.struts2.mybatis)注解式开发步骤
  10. MSP430单片机GPIO编程入门教程