多因素身份验证会检查一个人的身份的多个方面(而不只是检查一个),然后再允许其访问应用程序或数据库。它比单因素身份验证安全得多。
阅读本文后,您将能够:
复制文章链接
多因素身份验证(MFA)是一种验证用户身份的方式,比传统的用户名与密码组合更加安全。MFA 通常包含一个密码,但同时也包含一个或两个其他身份验证因素。双因素身份验证 (2FA) 是 MFA 的一种。
MFA 是身份和访问管理 (IAM) 的重要组成部分,通常在单点登录 (SSO) 解决方案中实施。
在向用户授予访问软件应用程序或网络的权限之前,身份验证系统会评估用户专有的特征,以确保他们是所声称的身份。这些特征也称为“身份验证因素”。
用途最广的三大身份验证因素是:
MFA 是指任何使用两个或多个身份验证因素的方法。如果仅使用两个验证因素,MFA 也可指代双因素身份验证或两步验证。三因素身份验证是 MFA 的另一种形式。
单因素身份验证仅使用上述因素之一来识别一个人的身份。单因素身份验证的最常见示例是要求提供用户名和密码组合。
单因素身份验证的问题在于,攻击者只需要以一种方式成功攻击用户即可假冒用户。如果有人窃取了用户的密码,则用户的帐户已经受损。相比之下,如果用户实施了 MFA,则攻击者访问其帐户所需要的不仅仅是密码。例如,他们可能还需要从用户那里窃取实体物品,而这要困难得多。
此问题也适用于其他形式的单因素身份验证。想象一下,如果在取钱时银行仅要求提供借记卡(所有物因素),而不需要提供借记卡和 PIN。盗贼只需要窃得一个人的借记卡,就能从其帐户中盗取资金。
务必记住,只有使用不同的因素才能确保 MFA 的安全,而不是多次使用同一因素。
假设一个应用程序仅提示用户输入密码,而另一个应用程序则提示用户输入密码和安全提示问题答案。哪个应用程序更加安全?
从技术上讲,答案是两者都不:两个应用程序都仅依赖一个身份验证因素,即知识因素。与仅需要密码和一些安全提示问题的应用程序相比,需要密码和物理令牌或指纹扫描的应用程序更加安全。
这是一个与背景信息高度相关的问题。通常,任何形式的多因素身份验证都比单因素身份验证安全得多。
话虽如此,某些形式的 MFA 已被证明容易受到复杂攻击方法的攻击。在一个真实世界的例子中,攻击者向员工发送 SMS 网络钓鱼消息,指向组织单点登录服务的虚假登录页面。如果用户在这个虚假页面中输入用户名和密码,则会发生以下步骤:
相比之下,另一种验证“拥有的物品”的方法——USB 安全令牌,不会受到这种特定攻击的影响。如果所有用户都获得了唯一的安全令牌来插入他们的计算机,并且必须物理激活这些令牌才能进行身份验证,那么拥有某人的用户名和密码的攻击者将无法访问帐户,除非他们窃取了该人的计算机。使用固有特质验证身份也是如此,例如用户的指纹或面部扫描。
这是否意味着安全令牌和指纹扫描比一次性密码更安全?在网络钓鱼的情况下,是的。但是在选择 MFA 方法之前,组织应该评估其特定的安全风险和需求。同样,任何形式的 MFA 都比单因素身份验证更安全,并且代表组织的安全之旅向前迈出了重要一步。
除上面列出的三个主要因素外,一些安全行业成员还提议或实施了其他身份验证因素。尽管很少实施,但这些身份验证因素包括:
位置:用户登录时所在的位置。例如,如果一家公司位于美国,并且所有员工都在美国工作,那么它可以评估员工的 GPS 位置并拒绝来自另一个国家/地区的登录。
时间:用户登录的时间,通常与其他登录和位置有关。如果用户似乎从一个国家/地区登录,几分钟后又试图从另一个国家/地区进行后续登录,则这些请求不太可能是合法的。系统可能也会拒绝正常工作时间之外的登录,尽管这更像是安全策略,而不是身份验证因素。
如果这些都视为额外的身份因素(这有待商榷),那么四因素身份验证和五因素身份验证在技术上是可行的,两者都属于多因素身份验证的范畴。
必须权衡采取如此强有力的安全措施给用户造成的代价,因为过分严格的安全措施会促使用户规避官方政策。
如今,许多消费者 Web 服务都提供 MFA。大多数具有 MFA 的应用程序都提供某种形式的 2FA,要求用户在登录时使用智能手机。浏览各个应用程序中的安全设置,即可查看是否可以激活 2FA。此外,Cloudflare 允许所有 Cloudflare 用户为其帐户实施 2FA。
建议使用 SSO 解决方案来实施 MFA。SSO 提供单一的场所,以便在所有应用程序中实施 MFA,但并非所有应用程序都一一支持 MFA。
Cloudflare Zero Trust 与支持双因素身份验证的 SSO 供应商相集成。Cloudflare 能够控制用户能够执行的操作,以及为远程工作和办公室受控环境中的员工实施安全策略,从而保护公司的网站和云应用程序。