什麼是多重要素驗證 (MFA)?

多重要素驗證在允許使用者存取應用程式或資料庫之前會檢查其身分的多個方面,而不僅僅是檢查一個方面。它比單一要素驗證安全得多。

學習目標

閱讀本文後,您將能夠:

  • 定義多重要素驗證 (MFA)
  • 瞭解為什麼 MFA 比單獨使用密碼更安全
  • 探索各種身分驗證因素

複製文章連結

什麼是 MFA(多重要素驗證)?

多重要素驗證 (MFA) 是一種驗證使用者身分的方法,比經典的使用者名稱-密碼組合更安全。MFA 通常包含密碼,但也包含一兩個其他驗證因素。雙重驗證 (2FA) 是一種 MFA。

MFA 是身分識別與存取管理 (IAM) 的重要組成部分,通常在單一登入 (SSO) 解決方案中實作。

什麼是驗證因素?

在授予使用者存取軟體應用程式或網路的權限之前,身分驗證系統會評估使用者的特定特徵,以確保他們是所聲稱的人。這些特徵也稱為「驗證因素」。

三種最廣泛使用的驗證因素是:

  1. 知道的內容:使用者知道的內容
  2. 擁有的物品:使用者擁有的物品
  3. 固有特質:使用者的特質

MFA 是指兩個或多個驗證因素的任何用法。如果僅使用兩個驗證因素,則 MFA 也稱為雙重驗證或兩步驗證。三重要素驗證是 MFA 的另一種形式。

三個驗證因素有哪些實際範例?

  • 知道的內容(使用者知道的內容):此因素是一些僅限一個使用者擁有的知識,例如使用者名稱和密碼組合。其他類型的「知道的內容」因素包括安全性問題、身分證號碼和社會安全號碼。甚至是「祕密交握」也可能是使用者知道的內容。
  • Possession (something the user has): This factor refers to possession of a physical token, device, or key. The most basic example of this authentication factor is using a physical house key to enter one's home. In a computing context, the physical object could be a key fob, a USB device, or even a smartphone. Many modern MFA systems will text a temporary code to a user's phone and ask them to enter the code in order to access their account. This demonstrates that the user possesses a phone that no one else possesses, helping establish their identity (unless an attacker has hijacked the user's SIM card).
  • Inherent qualities (something the user is): This refers to a physical property of one's body. The most basic version of this authentication factor is the ability to recognize someone by sight or by the sound of their voice. Humans use this ability constantly in their daily interactions. Checking one's appearance against the photo on one's ID card is another example of verifying inherent qualities. In a computing context, one example of this authentication factor is Face ID, a feature offered by many modern smartphones. Other methods may include fingerprint scanning, retina scans, and blood tests.

為什麼 MFA 比單一要素驗證更安全?

單一要素驗證是僅使用上述因素之一來識別一個人。要求使用者名稱和密碼組合是單一要素驗證的最常見範例。

單一要素驗證的問題在於,攻擊者只需以一種方式成功攻擊使用者即可冒充使用者。如果有人竊取了使用者的密碼,則使用者帳戶會被盜用。相比之下,如果使用者實作 MFA,則攻擊者存取其帳戶所需要的不僅僅是密碼。例如,他們可能還需要從使用者那裡竊取實體物品,而這要困難得多。

此問題也適用於其他形式的單一要素驗證。想像一下,如果在取錢時銀行僅要求提供轉帳卡(擁有的物品因素),而不是要求提供轉帳卡和 PIN。那麼,小偷只需要竊取某人的轉帳卡,就可以從其帳戶中盜取資金。

請務必記住,使 MFA 安全的是使用不同的因素,而不是多次使用同一因素。

假設一個應用程式僅提示使用者輸入密碼,而另一個應用程式提示使用者輸入密碼和安全性問題的答案。哪個應用程式更安全?

從技術上講,答案是都不安全:兩個應用程式都僅依賴於一個驗證因素,即知道的內容因素。要求密碼和實體權杖或指紋掃描的應用程式比只要求密碼和回答某些安全性問題的應用程式更安全。

Which forms of MFA are the most effective?

This is a highly contextual question. Generally, any form of multi-factor authentication will be much more secure than single-factor authentication.

With that said, certain forms of MFA have been shown to be vulnerable to sophisticated attack methods. In one real-world example, attackers sent employees SMS phishing messages pointing to fake login pages for the organization’s single-sign-on service. If a user entered their username and password into this fake page, the following steps took place:

  1. The attackers used the stolen username and password on the organization's real login page.
  2. The real login page attempted to verify another authentication factor — possession — by sending a temporary code to the real user’s phone.
  3. The attackers redirected the user to another fake page, which asked them to enter the temporary code.
  4. If the user did so, the attackers used that code on the real login page and gained access to the account.

By contrast, another way of verifying possession — a USB security token — would not be susceptible to this particular attack. If all users are given unique security tokens to plug into their computers, and must physically activate those tokens in order to authenticate, attackers in possession of someone’s username and password would not be able to access accounts unless they stole that person’s computer. The same could be said of verifying identity using inherent qualities, e.g. a user’s fingerprint or facial scan.

Does this mean security tokens and fingerprint scans are more secure than one-time passwords? In a phishing context, yes. But organizations should evaluate their specific security risks and needs before selecting an MFA method. And again, any form of MFA is more secure than single-factor authentication, and would represent an important step forward in an organization’s security journey.

還有其他驗證因素嗎?

除了上面列出的三個主要因素之外,安全性產業的一些成員還提出或實作了其他驗證因素。儘管很少實施,但這些驗證因素包括:

位置:使用者登入時的位置。例如,如果一家公司位於美國,其所有員工都在美國工作,它可以評估員工的 GPS 位置並拒絕來自其他國家/地區的登入。

時間:使用者登入的時間,通常與其他登入和位置有關。如果使用者似乎從一個國家/地區登入,幾分鐘後又試圖從另一個國家/地區進行後續登入,則這些請求不太可能是合法的。系統可能也會拒絕正常工作時間之外的登入,儘管這更像是安全性原則,而不是身分驗證因素。

如果這些都被認為是額外的身分因素(這存在爭議),那麼四重要素驗證和五重要素驗證在技術上是可行的。兩者都屬於多因素驗證的範疇。

實作如此強大的安全性措施必須與這對使用者造成的損失進行權衡,因為過於嚴格的安全性措施通常會促使使用者規避官方政策。

使用者如何為其帳戶實作 MFA?

目前,許多消費者 Web 服務都提供 MFA。大多數使用 MFA 的應用程式都提供一種 2FA 形式,要求使用者在登入時使用智慧型手機。探索每個應用程式中的安全性設定,以查看是否可以啟動 2FA。此外,Cloudflare 允許所有 Cloudflare 使用者為其帳戶實作 2FA

企業如何實作 MFA?

想要實作 MFA,建議使用 SSO 解決方案。SSO 提供單一的場所,以便對所有應用程式實作 MFA,但並非所有應用程序都支援 MFA。

Cloudflare Zero Trust 與支援 2FA 的 SSO 廠商整合。Cloudflare 透過控制使用者能夠執行的操作並對員工(無論他們是遠端工作還是在受控辦公環境中工作)實施安全性原則,來協助保護公司的網站和雲端應用程式。