多重身份验证 (MFA) 是一种通过要求至少两种不同形式的证明来验证用户身份的方法,例如在线帐户密码和指纹或其他生物识别数据。MFA 提供了密码之外的额外保护。
多数互联网用户熟悉 MFA 中最常见的双因素身份验证 (2FA) 形式。双因素身份验证仅需两种凭证,但部分 MFA 方案要求三种或更多。
例如,要登录通过 MFA 提供保护的电子邮件帐户,用户可能需要输入正确的帐户密码(第一个因素),以及电子邮件提供商通过短信发送到用户移动设备的一次性密码(第二个因素)。对于特别敏感的帐户,可能还需要第三种证据,例如,拥有硬件密钥。
只有在每个 必需因素都核对无误的情况下,用户才能访问系统。如果出现任何错误,登录尝试将失败。
MFA 方法用于访问各种敏感帐户、资产和系统。它们甚至会在线下出现:使用银行卡(第一个证据)和 PIN 码(第二个证据)从 ATM 机上提取现金是 MFA 的一种形式。
MFA 已成为企业身份与访问管理 (IAM) 策略中愈发重要的组成部分。传统单因素身份验证依赖用户名与密码,此类凭证易遭窃取或破解。事实上,据 IBM《数据泄露成本报告》,凭证泄露是数据泄露最常见的诱因。
MFA 系统需要多个证据来确认用户身份,因此额外增强了安全性。即使黑客窃取了密码,他们也没有足够的信息未经授权访问系统。他们仍然需要提供第二个因素。
此外,第二个因素通常是比简单密码更难破解的东西,例如指纹辨识或物理安全令牌。
在 MFA 系统中,用户至少需要两个证据,称为“身份验证因素”,以证明自己的身份。MFA 系统可以使用多种类型的身份验证因素,真正的 MFA 系统至少使用两种不同类型的因素。
使用不同类型的因素被认为比使用多个相同类型的因素更安全,因为网络罪犯需要在不同渠道使用不同的方法来破解每个因素。
例如,黑客可能通过植入间谍软件窃取用户密码。但该软件无法获取发送至用户手机的一次性验证码,也无法复制用户指纹。攻击者需要拦截含验证码的短信或入侵指纹扫描器才能获取全部所需凭证。
身份验证因素的类型包括:
知识因素是指理论上只有用户才知道的信息,例如密码、PIN 和安全问题的答案。在多数 MFA 实施中,知识因素(通常是密码)是第一个因素。
但知识因素同时也是最脆弱的身份验证因素。黑客可以通过网络钓鱼攻击、在用户设备上安装恶意软件或发动暴力破解攻击等手段获取密码和其他知识因素。
其他类型的知识因素同样存在安全漏洞。多数安全问题的答案(如经典的“您母亲的娘家姓?”)可通过基础社交媒体调研或诱骗用户透露个人信息的社会工程攻击破解。
需要密码和安全问题的常见做法并不是 真正的 MFA,因为它使用了两个相同类型的因素,这里是两个知识因素。相反,这是一种两步验证 过程。两步验证可提供一些额外的安全性,因为它需要多个因素,但它不如真正的 MFA 那么安全。
持有因素是指一个人拥有的可以用来证明自己身份的东西。持有因素包括数字软件令牌和物理硬件令牌。
如今,更常见的软件令牌是在用户拥有的设备(通常是智能手机或其他移动设备)上存储或生成的数字安全密钥。使用软件令牌,用户设备将充当持有因素。MFA 系统假定只有合法用户才能访问设备及其上的任何信息。
软件安全令牌可以采取多种形式,从自动验证用户身份的数字证书到用户每次登录时更改的一次性密码 (OTP),不一而足。
一些 MFA 解决方案会通过短信、电子邮件或电话将 OTP 发送到用户手机。其他 MFA 实施方案使用身份验证应用程序:持续生成基于时间的一次性密码 (TOTP) 的专用移动应用程序。许多 TOTP 会在 30-60 秒后过期,因此,在时间用完和密码过期之前很难被窃取和使用。
部分身份验证器应用程序采用推送通知而非 TOTP。用户尝试登录账户时,应用程序直接向其设备的 iOS 或 Android 系统发送推送通知。用户需要点击确认登录请求。
常见的身份验证应用程序包括 Google Authenticator、Microsoft Authenticator 与 LastPass Authenticator。
其他身份验证系统使用专用硬件充当物理令牌。将某些物理令牌插入计算机的 USB 端口,并自动将身份验证信息传输到应用程序和网站。其他硬件令牌是独立设备,可按需生成 OTP。
硬件令牌也可能包含更传统的安全密钥,例如开启物理锁的密钥卡,或需要刷卡读取的智能卡。
持有因素的主要优点是,恶意行为者必须拥有该因素才能冒充用户。通常,这意味着窃取智能手机或安全密钥。此外,OTP 将在设定的时间后过期。即使黑客窃取了一个,也不能保证它能正常使用。
但持有因素并非绝对可靠。实体令牌可能被盗、遗失或放错地方。数字证书可被复制。OTP 虽比传统密码难窃取,但仍可能遭特定恶意软件、网络钓鱼攻击或中间人攻击。
黑客还可以使用更复杂的手段。在 SIM 卡克隆诈骗中,攻击者创建受害者智能手机 SIM 卡的功能副本,从而拦截发送到用户电话号码的密码。
MFA 疲劳攻击会利用使用推送通知的 MFA 系统。黑客向用户的设备发送大量欺诈性通知,希望受害者会意外确认其中一条,这样,黑客就能进入他们的帐户。
属性因素也称为“生物识别”,是用户独有的身体特征,例如指纹、面部特征和视网膜辨识。许多智能手机和笔记本电脑都配备了人脸和指纹识别器,许多应用程序和网站都可以使用这些生物识别数据作为身份验证因素。
固有因素虽最难破解,但仍存风险。例如,安全研究人员发现某些笔记本电脑的 Windows Hello 指纹扫描器存在漏洞。研究人员能够替换已注册用户的指纹以控制设备。
人工智能 (AI) 图像生成技术的进步亦引发网络安全专家的担忧,黑客或利用其欺骗面部识别系统。
当生物识别数据遭到泄露后,将无法快速或轻松地对其进行更改,因此,很难阻止正在进行的攻击和重新获得对帐户的控制权。
行为因素是帮助根据行为模式验证用户身份的数字工具,例如,用户的典型 IP 地址范围、通常所在位置和平均打字速度。
例如,从企业虚拟专用网 (VPN) 登录到应用程序时,用户可能只需要提供一个身份验证因素。他们在可信 VPN 上的存在算作第二个因素。
同样,某些系统允许用户注册可信设备作为身份验证因素。每当用户从受信任的设备访问系统时,使用该设备就会自动充当第二个因素。
行为因素虽提供高级用户身份验证手段,但黑客仍可通过模仿用户行为冒充用户。
例如,如果黑客获得受信任设备的访问权限,他们可以将其用作一个身份验证因素。同样,攻击者可以伪造他们的 IP 地址,使其看起来像是已连接到企业 VPN。
自适应 MFA 采用自适应身份验证(亦称“风险型身份验证”)。该系统运用 AI 与机器学习 (ML) 评估用户行为,动态调整身份验证要求。风险越高,所需身份验证因素越多。
例如,若用户通过受信网络中的已知设备登录低权限应用程序,可能仅需输入密码。
如果同一用户尝试通过不安全的公共 Wi-Fi 连接登录到同一应用程序,他们可能需要提供第二个因素。
如果用户尝试访问特别敏感的信息或更改关键帐户信息,他们可能需要提供第三个甚至第四个因素。
自适应身份验证系统可以帮助组织解决 MFA 实施中一些最常见的挑战。例如,用户可能会抵制 MFA,因为他们发现它不如简单密码方便。使用自适应 MFA,用户只需要在敏感情况下使用多个因素,从而改善用户体验。
对于组织来说,不同的资产和网络部分可能需要不同级别的安全性。要求每个应用程序和活动都进行 MFA 可能会造成糟糕的用户体验,并且几乎没有安全优势。
使用自适应身份验证系统,组织将能够根据所涉及的用户、活动和资源定义更精细的访问管理流程,而不是采用一刀切的解决方案。
也就是说,自适应系统可能需要比标准 MFA 解决方案更多的资源和专业知识来进行维护。
无密码 MFA 系统仅接受持有因素、属性因素和行为因素,而不接受知识因素。例如,要求用户提供指纹和物理令牌就构成了无密码 MFA。
密钥(例如基于流行的 FIDO 标准的密钥)是最常见的无密码身份验证方式之一。它们使用公钥加密技术来验证用户的身份。
无密码 MFA 摒弃了知识因素,因为它们是最容易被攻破的因素。虽然目前大多数 MFA 方法都使用密码,但业内专家预计,未来将越来越多地不使用密码。包括 Google、Apple、IBM 和 Microsoft 在内的组织都提供无密码身份验证选项。
组织使用身份验证系统来保护用户帐户免受这些攻击。然而,在最基本的身份验证系统中,只需要一个密码就能获得访问权限,这并不比“Charlie 派我来的”安全多少。
据 IBM 《数据泄露成本报告》 ,凭证泄露与钓鱼攻击是数据泄露事件中最常见的两大网络攻击向量。它们合计占泄露事件的 31%。这两种媒介通常都是通过窃取密码来实现的,黑客可以利用这些密码劫持合法帐户和设备进行破坏。
黑客通常以密码为攻击目标,因为很容易通过暴力或欺骗手段破解密码。此外,由于人们重复使用密码,黑客往往可以利用一个被盗密码入侵多个帐户。密码被盗会给用户和组织带来严重后果,导致身份盗窃、金钱盗窃、系统破坏等。
MFA 为用户帐户增加了一层额外保护,通过在攻击者与其目标之间设置更多障碍来帮助阻止未经授权的访问。即使黑客可以窃取密码,他们仍然需要另一个因素才能进入。
MFA 还能帮助企业满足合规要求。例如,支付卡行业数据安全标准 (PCI DSS) 明确要求处理支付卡数据的系统采用 MFA。
其他数据隐私和安全法规,例如《萨班斯-奥克斯利法案》 (SOX) 和《通用数据保护条例》(GDPR),并未明确要求采用 MFA。然而,MFA 系统也可以帮助组织满足这些法律设定的严格安全标准。
某些情况下企业因数据泄露事件被迫采用 MFA。例如,美国联邦贸易委员会勒令在线酒类销售商 Drizly 实施 MFA,此前,该公司发生了一起影响 250 万客户的漏洞事件。1
单点登录 (SSO) 是一种身份验证方案,支持用户使用一组凭据登录多个应用程序。虽然 SSO 和 MFA 都涉及身份验证,但它们的目的截然不同:MFA 增强了安全性,而 SSO 则是为了方便使用。
SSO 通常用于工作人员必须访问多个服务或应用程序才能完成工作的组织。要求用户为每个应用程序创建单独的帐户可能会导致密码疲劳,即记住不合理数量的登录密码所带来的压力。
使用 SSO,人们将能够使用单一登录名访问多个应用程序,从而改善用户体验。
MFA 不一定能解决用户体验问题,但它确实为登录过程增加了一层额外的安全性。
MFA 和 SSO 既相关又互补,因为现代 SSO 系统通常要求采用 MFA,帮助确保登录过程既方便又相对安全。
2FA 和 MFA 的区别在于:2FA 严格采用两种因素,而 MFA 根据安全需求可能要求两、三种甚至更多因素。2FA 是 MFA 的一种。
多数 MFA 应用程序采用 2FA,因双因素通常已足够安全。但涉及金融数据或含个人身份信息 (PII) 等高敏感内容时,企业可能要求额外因素。