
多要素認証(MFA)、または二要素認証(2FA)は、ユーザーが認証メカニズムに対して2つ以上の異なる種類の証拠(または要素)を正しく提示した後にのみ、ウェブサイトやアプリケーションへのアクセスが許可される電子認証方法です。MFAは、例えば単一のパスワードなどを発見できた可能性のある不正な第三者による個人データ(個人識別情報や金融資産など)へのアクセスからデータを保護します。
近年、MFAの利用が増加している。MFAのバイパスにつながるセキュリティ上の問題としては、疲労攻撃、フィッシング、SIMスワッピングなどが挙げられる。[ 1 ]
MFAが有効になっているアカウントは、侵害される可能性が著しく低い。[ 2 ]
認証は、誰かがコンピュータ リソース (コンピュータ ネットワーク、デバイス、アプリケーションなど)にログインしようとしたときに発生します。リソースは、ユーザーがリソースに認識されているIDと、その ID に対するユーザーの主張の正当性を示す証拠をユーザーに提供することを要求します。単純な認証では、そのような証拠 (要素) が 1 つだけ必要です。通常はパスワードですが、クレジットカード番号とカード確認コード(CVC) のように、すべて同じ種類の証拠が複数必要な場合もあります。セキュリティを強化するために、リソースは複数の要素 (多要素認証) を要求する場合があり、正確に 2 種類の証拠を提供する必要がある場合は、2 要素認証となります。[ 3 ]
本人確認に複数の認証要素を使用するのは、不正な行為者がアクセスに必要なすべての要素を提供できる可能性は低いという前提に基づいています。認証試行において、構成要素の少なくとも1つが欠落しているか、誤って提供された場合、ユーザーの本人確認は十分に確実とはならず、多要素認証によって保護されている資産(建物やデータなど)へのアクセスはブロックされたままになります。多要素認証スキームの認証要素には、以下が含まれる場合があります。[ 4 ]
二要素認証の例としては、 ATMからの現金引き出しが挙げられます。物理的に存在する銀行カード(ユーザーが所有しているもの)とPIN(ユーザーが知っているもの)の正しい組み合わせのみが取引の実行を許可します。他の2つの例としては、ユーザーが管理するパスワードに、ユーザーのみが所有する認証装置(セキュリティトークンやスマートフォンなど)によって生成または受信されるワンタイムパスワード(OTP)またはコードを追加する方法があります。[ 5 ]
認証アプリは、 SMSを送信したり他の方法を使用したりするのではなく、ランダムに生成され常に更新されるコードを表示することで、異なる方法で二要素認証を可能にします。 [ 6 ]このコードは時間ベースのワンタイムパスワード(TOTP)であり、認証アプリにはこれらのコードを生成するための鍵となる情報が含まれています。
知識要素(「ユーザーのみが知っている情報」)は認証の一形態である。この方式では、ユーザーは認証を受けるために秘密情報に関する知識を証明する必要がある。
パスワードは、ユーザー認証に使用される秘密の単語または文字列です。これは、最も一般的に使用される認証メカニズムです。[ 4 ]多くの多要素認証技術は、認証要素の1つとしてパスワードに依存しています。バリエーションには、複数の単語で構成される長いもの(パスフレーズ)と、 ATMアクセスによく使用される短い純粋な数字のPINの両方があります。従来、パスワードは記憶することが想定されていましたが、隠された紙やテキストファイルに書き留めることもできます。
所有要素(「ユーザーだけが持っているもの」)は、鍵と錠前という形で、何世紀にもわたって認証に用いられてきました。その基本原理は、鍵が錠前と鍵の間で共有される秘密を体現しているというものであり、コンピュータシステムにおける所有要素認証も同じ原理に基づいています。セキュリティトークンは、所有要素の一例です。
切断型トークンはクライアントコンピュータとの接続がありません。通常、内蔵スクリーンを使用して生成された認証データを表示し、ユーザーが手動で入力します。このタイプのトークンは、ほとんどの場合、その特定のセッションでのみ使用できるワンタイムパスワードを使用します。 [ 7 ]

コネクテッドトークンは、使用するコンピュータに物理的に接続されるデバイスです。これらのデバイスはデータを自動的に送信します。 [ 8 ] USBトークン、スマートカード、ワイヤレスタグなど、さまざまな種類があります。[ 8 ] FIDOアライアンスとワールドワイドウェブコンソーシアム(W3C)がサポートするFIDO2対応トークンは、2015年から主流のブラウザでサポートされるようになり、ますます普及しています。
ソフトウェアトークン(ソフトトークンとも呼ばれる)は、コンピュータサービスの利用を認証するために使用できる二要素認証セキュリティデバイスの一種です。ソフトウェアトークンは、デスクトップコンピュータ、ノートパソコン、PDA、携帯電話などの汎用電子機器に保存され、複製可能です。これに対し、ハードウェアトークンでは認証情報が専用のハードウェアデバイスに保存されるため、デバイスへの物理的な侵入がない限り複製できません。ソフトトークンは、ユーザーが操作するデバイスではない場合があります。通常、この目的のために、X.509v3証明書がデバイスにロードされ、安全に保管されます。
多要素認証は、物理的なセキュリティシステムにも適用できます。この場合、通常は、まず、識別資格情報として機能する物理的な所有物(キーフォブ、キーカード、またはデバイスに表示されるQRコードなど)を使用し、次に、顔認証や網膜スキャン(顔認証または顔検証)、またはPINなどの本人確認を行うことで導入されます。
固有要素(「ユーザー自身」)とは、ユーザーに関連付けられた要素であり、通常は指紋、顔、[ 9 ]音声、虹彩認識などの生体認証方法です。キーストロークダイナミクスなどの行動生体認証も使用できます。
ユーザーの物理的な場所という4つ目の要素がますます重要になってきています。企業ネットワークに有線接続されているユーザーはPINコードのみを使用してログインできますが、リモートで作業している場合は、ソフトトークンからのコード入力など、より安全なMFA方式が必要になる場合があります。MFA方式の種類と頻度をユーザーの場所に合わせて調整することで、リモートワークに共通するリスクを回避できます。[ 10 ]
ネットワークアクセス制御システムは、同様の仕組みで動作します。ネットワークアクセスレベルは、デバイスが接続されている特定のネットワーク(Wi-Fi接続か有線接続かなど)に応じて制御されます。これにより、ユーザーはオフィス間を移動しても、それぞれのオフィスで同じレベルのネットワークアクセスを動的に受けることができます。

テキストメッセージによる二要素認証は、1996年にAT&Tが双方向ページャーを介したコードの交換に基づく取引承認システムについて説明した時点で既に開発されていた。[ 11 ] [ 12 ]
多くの多要素認証ベンダーは、携帯電話ベースの認証を提供しています。認証方法には、プッシュ通知認証、QRコード認証、ワンタイムパスワード認証(イベントベースおよび時間ベース)、SMS認証などがあります。SMS認証には、セキュリティ上の懸念事項がいくつかあります。携帯電話がクローンされる可能性があり、アプリが複数の携帯電話で実行される可能性があり、携帯電話の保守担当者がSMSメッセージを読み取ることができる可能性があります。さらに、携帯電話自体が侵害される可能性があり、そうなると携帯電話はもはやユーザーだけの所有物ではなくなります。
ユーザーが所有するものを含む認証の主な欠点は、ユーザーが物理的なトークン(USB スティック、銀行カード、鍵など)をほぼ常に持ち歩かなければならないことです。紛失や盗難のリスクがあります。多くの組織は、マルウェアやデータ盗難のリスクのため、USB や電子機器を施設内外に持ち込むことを禁止しており、同じ理由でほとんどの重要なマシンには USB ポートがありません。物理的なトークンは通常拡張性がなく、新しいアカウントやシステムごとに新しいトークンが必要になります。このようなトークンの調達とその後の交換にはコストがかかります。さらに、使いやすさとセキュリティの間には、本質的な矛盾と避けられないトレードオフがあります。[ 13 ]
携帯電話やスマートフォンを用いた2段階認証は、専用の物理デバイスに代わる手段となります。認証には、デバイスへの個人アクセスコード(つまり、ユーザー本人しか知らないコード)と、通常4~6桁の1回限りの動的パスコードを使用します。パスコードは、SMSでモバイルデバイス[ 3 ]に送信するか、ワンタイムパスコード生成アプリで生成できます。どちらの場合も、携帯電話を使用する利点は、ユーザーが常にモバイルデバイスを持ち歩いているため、専用のトークンが不要になることです。
SMS認証は広く普及しているにもかかわらず、セキュリティ擁護者はSMS認証を公然と批判しており[ 14 ]、2016年7月には米国NISTのガイドライン草案で認証方法としての使用を非推奨とすることが提案された[ 15 ] 。 1年後、NISTは最終版ガイドラインでSMS認証を有効な認証チャネルとして復活させた[ 16 ] 。
2011年にはすでにDuo Securityがモバイルアプリ経由でMFAのプッシュ通知を提供していた。 [ 17 ] 2016年と2017年には、GoogleとAppleがそれぞれプッシュ通知によるユーザー2段階認証を代替手段として提供し始めた。[ 4 ] [ 18 ] [ 19 ]
SMSで配信されるセキュリティトークンのセキュリティは、携帯電話事業者の運用セキュリティに完全に依存しており、国家安全保障機関による盗聴やSIMクローニングによって容易に侵害される可能性がある。 [ 20 ]
利点:
デメリット:
ペイメントカード業界(PCI)データセキュリティ基準の要件8.3では、ネットワーク外部からカードデータ環境(CDE)へのすべてのリモートネットワークアクセスにMFAを使用することが求められています。[ 25 ] PCI-DSSバージョン3.2以降では、ユーザーが信頼できるネットワーク内にいる場合でも、CDEへのすべての管理アクセスにMFAの使用が義務付けられています。
第2次決済サービス指令は、 2019年9月14日以降、欧州経済領域におけるほとんどの電子決済に「強力な顧客認証」を義務付けている。 [ 26 ]
インドでは、インド準備銀行が、デビットカードまたはクレジットカードを使用したすべてのオンライン取引に対して、パスワードまたはSMSで送信されるワンタイムパスワードのいずれかを使用した二要素認証を義務付けました。この要件は、発行銀行でオプトインした後、2,000ルピーまでの取引については2016年に削除されました。[ 27 ] Uberなどのベンダーは、この二要素認証の展開に準拠するように銀行から支払い処理システムを修正するよう義務付けられています。[ 28 ] [ 29 ] [ 30 ]
米国の連邦職員および請負業者の認証に関する詳細は、国土安全保障大統領指令12(HSPD-12)に規定されている。[ 31 ]
連邦政府システムへのアクセスに関するIT規制基準では、機密性の高いITリソースにアクセスするために多要素認証の使用が義務付けられています。たとえば、管理タスクを実行するためにネットワークデバイスにログインする場合[ 32 ]、および特権ログインを使用してコンピュータにアクセスする場合[ 33 ]などです。
NIST特別刊行物800-63-3では、さまざまな形式の二要素認証について説明し、さまざまなレベルの保証を必要とするビジネスプロセスでの使用に関するガイダンスを提供しています。[ 34 ]
2005年、米国連邦金融機関検査評議会は、金融機関に対し、リスクベースの評価を実施し、顧客意識向上プログラムを評価し、オンライン金融サービスにリモートでアクセスする顧客を確実に認証するためのセキュリティ対策を開発することを推奨するガイダンスを発行し、ユーザーの身元を判断するために複数の要素(具体的には、ユーザーが何を知っているか、何を持っているか、そしてどのような人物であるか)に依存する認証方法の使用を公式に推奨した。[ 35 ]この発表を受けて、多くの認証ベンダーがチャレンジ質問、秘密の画像、その他の知識ベースの方法を「多要素」認証として不適切に宣伝し始めた。その結果生じた混乱と、そのような方法の広範な採用のため、2006年8月15日、FFIECは補足ガイドラインを発行し、定義上、「真の」多要素認証システムは、単一の要素の複数のインスタンスを使用するだけでなく、定義した3つの認証要素の異なるインスタンスを使用する必要があると述べた。[ 36 ]
この方法の信頼性を考慮すると、一部の国では、医療などの特定の業界において、機密情報の盗難を防ぐために多要素認証(MFA)が義務付けられています。例えば、米国では、カリフォルニア州消費者プライバシー法(CCPA)と医療保険の携行性と説明責任に関する法律(HIPAA)の両方が、個人データと医療データの保護に関する基準を定めており、安全なアクセスと規制遵守を確保するために多要素認証の実装を支援する規定が含まれています。
支持者によると、多要素認証は、被害者のパスワードだけでは泥棒が情報に永久的にアクセスできなくなるため、オンラインでのなりすましやその他のオンライン詐欺の発生率を大幅に減らすことができる。しかし、多くの多要素認証方式は、フィッシング[ 37 ] [ 38 ] 、ブラウザ内攻撃、中間者攻撃[ 39 ]に対して脆弱なままである。フィッシング攻撃に対抗するために、ユーザーは検証コードを誰とも共有すべきではなく[ 40 ]、多くのウェブアプリケーションプロバイダーは、コードを含む電子メールまたはSMSに警告を表示する[ 41 ] 。
2017年5月、ドイツの携帯電話サービスプロバイダーであるO2 Telefónicaは、サイバー犯罪者がSS7の脆弱性を悪用してSMSベースの2段階認証を回避し、ユーザーの銀行口座から不正に引き出しを行ったことを確認した。犯罪者はまず、口座所有者のコンピューターに感染させ、銀行口座の認証情報と電話番号を盗もうとした。次に、攻撃者は偽の通信事業者へのアクセス権を購入し、被害者の電話番号を自分たちが管理する端末にリダイレクトするように設定した。最後に、攻撃者は被害者のオンライン銀行口座にログインし、口座にある資金を犯罪者が所有する口座に引き出すよう要求した。SMSパスコードは攻撃者が管理する電話番号に転送され、犯罪者は資金を送金した。[ 42 ]
MFA を破る一般的な手法として、ログインを承認するようユーザーに何度も要求し、最終的に要求の多さに屈して誤って承認してしまうケースが増えています。[ 43 ]この種のソーシャル エンジニアリングは、多要素認証疲労攻撃(MFA 疲労攻撃または MFA 爆撃とも呼ばれる)と呼ばれ、IT サポートを装った電話などの他の要素が含まれる場合もあります。[ 44 ] [ 45 ] [ 46 ] MFA アプリケーションがエンド ユーザーにプッシュ通知を送信するように設定されている場合、攻撃者は、ユーザーが少なくとも 1 回は承認をクリックすることを期待して、大量のログイン試行を送信することができます。[ 44 ]
2022年、マイクロソフトは認証アプリでMFA疲労攻撃に対する緩和策を展開し、「承認」をクリックするのに加えて、ユーザーに数字の入力を任意で要求するようにした。[ 47 ]
2022年9月、UberのセキュリティはLapsus$のメンバーによって多要素疲労攻撃で侵害された。[ 48 ] [ 49 ] 2024年初頭、 Appleの「パスワードを忘れた場合」ページのレート制限とCAPTCHAを回避したハッカーによって引き起こされたMFA疲労攻撃を、Appleユーザーのごく一部が経験した。
多くの多要素認証製品では、多要素認証システムを機能させるために、ユーザーがクライアントソフトウェアをデプロイする必要があります。一部のベンダーは、ネットワークログイン、Webアクセス認証情報、VPN接続認証情報用に個別のインストールパッケージを作成しています。このような製品では、トークンまたはスマートカードを使用するために、クライアントPCにプッシュダウンする必要のあるソフトウェアパッケージが4つか5つある場合があります。これは、バージョン管理を実行する必要のあるパッケージが4つか5つあり、ビジネスアプリケーションとの競合をチェックする必要のあるパッケージが4つか5つあることを意味します。Webページを使用してアクセスを操作できる場合は、上記のオーバーヘッドを単一のアプリケーションに限定できます。ハードウェアトークン製品などの他の多要素認証技術では、エンドユーザーがソフトウェアをインストールする必要はありません。いくつかの研究では、MFA回復手順の実装が不十分だと、攻撃者が悪用する可能性のある新しい脆弱性が生じる可能性があることが示されています。[ 50 ]
多要素認証には、多くの方式が普及しない原因となる欠点があります。一部のユーザーは、ハードウェアトークンやUSBプラグの管理に苦労します。多くのユーザーは、クライアント側のソフトウェア証明書を自分でインストールするために必要な技術スキルを持っていません。一般的に、多要素ソリューションは、実装のための追加投資とメンテナンス費用が必要です。ほとんどのハードウェアトークンベースのシステムは独自仕様であり、一部のベンダーはユーザーごとに年間料金を請求します。ハードウェアトークンの展開は、物流面で困難です。ハードウェアトークンは破損または紛失する可能性があり、銀行などの大規模産業や大企業内でもトークンの発行を管理する必要があります。展開コストに加えて、多要素認証には多くの場合、かなりの追加サポートコストがかかります。Credit Union Journalによる2008年の120以上の米国の信用組合を対象とした調査[ 51 ]では、2要素認証に関連するサポートコストが報告されています。このレポートでは、ソフトウェア証明書とソフトウェアツールバー方式のサポートコストが最も高いと報告されています。
多要素認証方式の導入に関する研究[ 52 ]では、このようなシステムの採用に影響を与える要素の1つとして、多要素認証システムを導入する組織の事業分野が挙げられています。例として、堅牢な公開鍵基盤によって裏付けられた物理トークンの精巧なシステムを採用している米国政府や、顧客所有のスマートフォンにインストールされたアプリなど、よりアクセスしやすく安価な本人確認手段を含む多要素認証方式を顧客向けに好む傾向にある民間銀行などが挙げられます。組織が選択できる利用可能なシステムには様々なバリエーションがありますが、一度組織内に多要素認証システムが導入されると、ユーザーは必然的にシステムの存在と使用に慣れ、時間の経過とともに、関連する情報システムとの日常的なやり取りの標準的な要素として受け入れるため、そのシステムはそのまま維持される傾向があります。
多要素認証は完璧なセキュリティの領域にあるという認識がある一方で、ロジャー・グライムズは[ 53 ]、適切に実装および構成されていない場合、多要素認証は実際には簡単に破られる可能性があると書いています。

2013年、キム・ドットコムは2000年の特許で二要素認証を発明したと主張し[ 54 ]、主要なウェブサービスすべてを訴えると一時的に脅迫した。しかし、欧州特許庁はAT&Tが保有する1998年の米国特許[ 56 ]を理由に彼の特許を取り消した[ 55 ] 。