多要素認証(MFA)の選び方と導入の勘所。方式比較から運用まで徹底解説
対象の目安: 情報システム担当・開発者 / 実務レベル
パスワードの漏えいや使い回しに起因する不正ログインは、いまも被害の上位を占めます。攻撃者は、どこかのサービスから漏れたIDとパスワードのリストを使い、他のサービスへ次々とログインを試みます(リスト型攻撃)。パスワードという「知っているもの」一つに頼っている限り、それが漏れた瞬間に守りは崩れます。
多要素認証(MFA: Multi-Factor Authentication)は、パスワードが漏れても、それだけでは突破できない仕組みをつくる、費用対効果の高い対策です。多くのサービスで無料で使え、導入の手間に対して得られる安全性の向上が非常に大きいのが特長です。この記事では、MFAの基本的な考え方から、方式ごとの違い、組織での導入と運用の設計までを実務目線で整理します。
認証の3要素
多要素認証の「要素」とは、次の異なる種類の証明手段を指します。重要なのは、異なる「種類」を組み合わせることです。同じ種類を2つ重ねても多要素にはなりません(例: パスワードと秘密の質問は、どちらも「知識」要素なので多要素とは言えません)。
| 要素の種類 | 例 |
|---|---|
| 知識(知っているもの) | パスワード、PIN |
| 所持(持っているもの) | スマートフォンの認証アプリ、セキュリティキー |
| 生体(その人自身) | 指紋、顔 |
二要素認証(2FA)は多要素認証の一種で、ちょうど2つの要素を使うものを指します。一般には「パスワード(知識)+スマホの認証アプリ(所持)」の組み合わせが広く使われています。
なぜMFAが効くのか
攻撃者がパスワードを手に入れる経路はたくさんあります。フィッシング、漏えいリストの使い回し、マルウェアによる窃取などです。しかし、これらで得られるのは多くの場合「知識」要素だけです。MFAを有効にしておけば、攻撃者がパスワードを知っていても、手元に被害者のスマートフォンやセキュリティキーがなければログインできません。
つまりMFAは、「一つの要素が漏れても、即座には破られない」という多層防御を、認証という一点で実現する仕組みです。フィッシングの手口と個人向けの対策は あわせて読みたい フィッシングの手口と対策の基本。個人と組織でできることを徹底解説
方式ごとの強度と使い勝手
MFAと一口に言っても、方式によってフィッシング耐性や使い勝手が大きく異なります。
| 方式 | フィッシング耐性 | 使い勝手 | 備考 |
|---|---|---|---|
| SMSワンタイムコード | 低 | 高 | 導入は容易だが傍受・SIMスワップのリスク |
| 認証アプリ(TOTP) | 中 | 中 | 広く使え、SMSより安全 |
| プッシュ通知承認 | 中 | 高 | 承認疲れによる誤承認のリスクに注意 |
| FIDO2 / パスキー | 高 | 高 | フィッシングに原理的に強い。対応サービスが拡大中 |
NISTのデジタルID向けガイドライン(SP 800-63B)では、認証方式ごとの考え方や、より強固な認証の採用が論じられています。
SMSの位置づけ
SMSによるワンタイムコードは、導入が容易で広く普及していますが、SMSの傍受や、電話番号を乗っ取るSIMスワップ攻撃に弱い面があります。
メモ
SMSは「ないよりはるかに良い」一方で、傍受やSIMスワップに弱い面があります。MFAが全く無い状態から始めるならSMSでも大きな前進ですが、可能な場合は認証アプリやパスキーへの移行を検討してください。
認証アプリ(TOTP)
スマートフォンの認証アプリが30秒ごとに生成する6桁のコードを使う方式です。電話網に依存しないためSMSより安全で、無料で使え、対応サービスも多い、バランスの良い選択肢です。ただし、偽サイトにコードを入力させられると盗まれうるため、フィッシングに完全に強いわけではありません。
FIDO2 / パスキー
最も強固な選択肢です。パスキーは、アクセスしているサイトのドメインに技術的に紐づいているため、偽サイトでは原理的に認証が成立しません。これがフィッシング耐性の高さの理由です。利用者は指紋や顔、PINで認証するだけでよく、使い勝手も優れています。対応サービスが拡大しているため、新規導入や更新の際は積極的に採用を検討する価値があります。
プッシュ通知の「承認疲れ」に注意
プッシュ通知で承認するタイプは便利ですが、攻撃者が何度も承認要求を送りつけ、利用者がうんざりして誤って承認してしまう「MFA疲労攻撃(プッシュ爆撃)」が知られています。対策として、承認時に画面に表示された番号を入力させる方式(番号照合)を選ぶと、安易な承認を防げます。
組織での導入の進め方
組織全体にMFAを広げるときは、一斉導入で現場を混乱させるより、影響度に応じた段階導入が現実的です。
- 1
守るべきアカウントを棚卸しする
管理者権限、メール、業務システム、外部公開サービスなど、漏えい時の影響が大きいアカウントを洗い出し、優先順位を付けます。
- 2
重要アカウントから必須化する
まず管理者権限など影響の大きいものからMFAを必須にします。全社一斉より、影響度順の段階導入の方が、サポート負荷を抑えつつ確実に進められます。
- 3
フィッシング耐性の高い方式へ寄せる
新規導入や更新のタイミングで、可能なものはパスキー(FIDO2)を選びます。少なくとも、SMS単独から認証アプリ以上へ引き上げることを目標にします。
- 4
リカバリー手段を整える
端末紛失時の復旧手順とバックアップコードの管理方法を、導入と同時に用意します。ここを後回しにすると、紛失時に業務が止まります。
- 5
利用者に周知し支援する
なぜ必要か、どう設定するかを分かりやすく案内し、問い合わせ窓口を用意します。導入の成否は技術より周知と支援にかかっています。
運用とリカバリーの設計
MFAの導入でしばしば軽視されるのが、リカバリー(復旧)の設計です。端末を紛失・故障したときにログインできなくなると、業務が止まり、利用者の不満が高まります。一方で、リカバリー手段が甘いと、そこが新たな攻撃経路になります。
リカバリー設計のポイント
- バックアップコードを発行し、安全な場所に保管するよう案内する
- 予備の認証手段(複数のデバイスやセキュリティキー)の登録を推奨する
- 管理者による復旧フローを定め、本人確認の手順を明確にする
- 復旧手続き自体が、なりすましの抜け道にならないよう本人確認を厳格にする
特に、管理者へ「MFAをリセットしてほしい」と装って連絡するソーシャルエンジニアリングは現実的な脅威です。復旧時の本人確認を厳格にし、安易なリセットを行わない運用が重要です。
よくある質問
MFAを入れればパスワードは適当でよいですか?
SMS認証は使ってはいけませんか?
端末を紛失したらログインできなくなりますか?
パスキーがあればパスワードは不要になりますか?
プッシュ通知の承認は安全ですか?
まとめ
MFA導入チェックリスト
- 影響の大きいアカウントから優先的に必須化したか
- 可能な範囲でフィッシング耐性の高い方式(パスキー)を選んだか
- SMS単独に依存せず、認証アプリ以上へ引き上げたか
- 端末紛失時のリカバリー手段を導入と同時に用意したか
- 復旧手続きの本人確認を厳格にしたか
- パスワードの強度・使い回し対策も並行して行っているか
MFAは、限られたコストで不正ログインのリスクを大きく下げられる、最も費用対効果の高い対策の一つです。方式の違いとリカバリーの設計を押さえたうえで、重要なアカウントから着実に広げていきましょう。認証はWebセキュリティの要であり、OWASP Top 10でも重要なカテゴリです。あわせて あわせて読みたい OWASP Top 10とは。開発者が押さえるべきWebの代表的リスクと対策を一気に理解する
出典・参考
関連する記事
フィッシングの手口と対策の基本。個人と組織でできることを徹底解説
依然として被害が絶えないフィッシング詐欺について、典型的な手口とその進化、見破り方、個人と組織それぞれでできる対策、そして万一被害に遭ったときの対応までを、専門知識がなくても分かるように網羅的に解説します。
OWASP Top 10とは。開発者が押さえるべきWebの代表的リスクと対策を一気に理解する
Webアプリケーションの代表的なセキュリティリスクをまとめたOWASP Top 10について、その位置づけ、各カテゴリで何が問題になりどう防ぐか、そして開発プロセスへの組み込み方までを、開発者目線で具体例つきに解説します。
SQLインジェクションとは何か。仕組み・攻撃手法・影響・対策を原理から徹底解説
代表的なWeb脆弱性であるSQLインジェクションを、なぜ起きるのかという原理から、攻撃手法の分類、想定される影響、根本対策であるプレースホルダの使い方、多層防御、検出方法までを実務目線で網羅的に解説します。