1. 「MFAを入れたから安全」ではない——MFAにも強弱がある
多要素認証(MFA)は、パスワードだけに頼る認証よりもはるかに安全です。実際、多くのアカウント侵害はMFAの導入で防げます。しかし、「MFAを入れたから安全」という認識は危険です。MFAには方式ごとに大きな強弱があり、攻撃者は弱いMFAを回避する手口をすでに確立しているからです。
重要なのは、すべてのMFAが同じ強度ではないという事実です。米国のCISA(サイバーセキュリティ・インフラストラクチャ庁)やNIST(国立標準技術研究所)は、MFAを強度別に分類し、フィッシング耐性MFA(FIDO2/PKIベース)を最上位に位置づけています。強度を概念的に並べると次のようになります。
- 弱:SMS/音声によるワンタイムパスワード(OTP)
- 中:認証アプリのTOTP(時刻ベースのワンタイムパスワード)、プッシュ通知による承認
- 強(フィッシング耐性):FIDO2/パスキー、スマートカード(PKI)
攻撃者は、MFAの「人間依存」と「通信経路依存」の弱点を突きます。以降の章で、代表的な突破手口である「MFA疲労攻撃」「SIMスワップ」「AiTM攻撃」を順に解説し、なぜフィッシング耐性MFAだけがこれらすべてに耐えられるのかを明らかにします。
CISAはフィッシング耐性MFAを明確に推奨
CISAは2022年に「フィッシング耐性MFAの実装」に関するガイダンスを公表し、特に特権アカウント・重要システムではFIDO2/PKIベースの認証を推奨しています。「MFAを導入する」ことがゴールなのではなく、「どのMFAを、どこに導入するか」が問われる段階に、セキュリティの議論は移っています。
2. MFA疲労攻撃(プッシュ爆撃)——人間の油断を突く
最初に紹介するのは、技術ではなく人間の心理を突く手口、MFA疲労攻撃(MFA Fatigue / Push Bombing、プッシュ爆撃)です。
手口——「承認」を押させるまで通知を送り続ける
プッシュ通知による承認型MFAでは、ログイン時にユーザーのスマホに「ログインを承認しますか?」という通知が届き、ユーザーがタップして承認します。この手軽さが弱点になります。攻撃者は、すでに窃取済みのパスワードを使って何度もログインを試み、そのたびにユーザーのスマホへ承認通知を大量に送りつけます。
深夜に何十回も通知が鳴り続ければ、ユーザーは「誤作動だろう」「止めるために一度押してしまおう」と考え、根負けして承認ボタンを押してしまうことがあります。あるいは、攻撃者がIT部門を装って「システム更新の通知です。承認してください」と連絡し、承認を促すソーシャルエンジニアリングを併用することもあります。
実例——大手企業の侵害でも使われた手口
この手口は、実際の大規模インシデントで使われてきました。2022年に大手配車サービスのUberが受けた侵害では、MFA疲労攻撃が使われたと報じられています。攻撃者(攻撃グループLapsus$の関与が指摘されています)は、まず委託先アカウントのパスワードを入手し、繰り返しログインを試みてプッシュ通知を送りつけ、さらにサポート担当者を装って従業員に承認を促したとされます。正規のパスワードとMFAが設定されていたにもかかわらず、「人間が承認を押してしまう」ことで突破された典型例です。
緩和策と、その限界
MFA疲労攻撃への緩和策としては、以下が挙げられます。
- 番号照合(Number Matching):画面に表示された数字をスマホ側で入力させる方式。反射的なワンタップ承認を防ぐ。
- 承認回数の制限:短時間に大量の承認要求が発生した場合にロックする。
- コンテキスト表示:ログイン元の場所・アプリ・IPを通知に表示し、不審なら拒否を促す。
これらは有効な緩和策ですが、いずれも「人間が正しく判断すること」に依存しています。根本的な対策は、プッシュ承認という「人間の判断を挟む方式」自体をやめ、後述するFIDO2に移行することです。
「ワンタップ承認」の手軽さが弱点
プッシュ承認型MFAの弱点は、その利便性そのものにあります。「ワンタップで承認完了」の手軽さは、裏を返せば「内容を確認せずに押してしまえる」ということです。深夜に繰り返し通知が来れば、内容を精査せず押してしまう——攻撃者はこうした人間の心理と行動を熟知しています。利便性とセキュリティのトレードオフが、最も鋭く現れる方式です。
3. SIMスワップ——電話番号を乗っ取ってSMS認証を奪う
次に、通信経路の弱点を突く手口、SIMスワップ(SIMスワッピング)です。これはSMSによるワンタイムパスワードを標的にします。
手口——電話番号を攻撃者のSIMに移し替える
SIMスワップは、攻撃者が通信キャリアを騙して、標的の電話番号を攻撃者の手元のSIMカードに移し替える攻撃です。番号の移転が成功すると、それ以降、標的宛のSMS・音声通話はすべて攻撃者に届きます。銀行や暗号資産取引所がSMSで送るワンタイムパスワードも、当然攻撃者の手に渡ります。
騙しの手口はいくつかあります。漏洩した個人情報(氏名・生年月日・住所等)を使って本人になりすまし、「スマホを紛失した」「機種変更したい」としてSIMの再発行を申請する。あるいは、キャリアショップやサポートの内部関係者を買収・共謀させるケースも報告されています。
被害——アカウント乗っ取りの連鎖
電話番号を奪われると、SMS認証に依存したあらゆるサービスが危険にさらされます。銀行口座、暗号資産取引所、そしてパスワードリセットにSMSを使うメールアカウント——メールを乗っ取られれば、そこを起点に他のサービスも連鎖的に侵害されます。海外では、SIMスワップを起点に多額の暗号資産が窃取された事例が複数報告されています。
対策——SMSを重要認証に使わない
SIMスワップへの対策は、キャリア側の本人確認強化(暗証番号の設定、SIM再発行時の追加認証)も重要ですが、利用者・企業側でできる最も確実な対策は「重要な認証にSMSを使わない」ことです。SMSは電話番号という、本来認証のために設計されていない仕組みに依存しており、根本的に脆弱です。
NISTもSMS認証のリスクに以前から注意喚起
NIST SP 800-63B(デジタルアイデンティティガイドライン)は、以前からSMSによるOTP(アウトオブバンド認証)のリスクに注意を促してきました。SMSは「何もないよりはまし」ではあるものの、フィッシングやSIMスワップに弱く、高い保証レベルが求められる用途には不十分とされています。SMS認証は「最低限の一手」であって「十分な対策」ではない、という位置づけを理解しておくことが重要です。
4. AiTM(中間者)攻撃——リアルタイムでトークンを盗む
3つ目は、TOTPやプッシュ承認といった「中程度の強度」のMFAすら突破する、最も洗練された手口——AiTM(Adversary-in-the-Middle:中間者)攻撃です。
手口——偽サイトが通信を「中継」する
AiTM攻撃では、攻撃者がフィッシングサイトを正規サイトとユーザーの間に挟み、リバースプロキシとして通信をリアルタイムに中継します。流れは次のとおりです。
- ユーザーがフィッシングメール等で偽サイトに誘導される。偽サイトは正規サイトそっくりに表示される。
- ユーザーがID・パスワード・ワンタイムパスワードを偽サイトに入力する。
- 攻撃者は入力された情報をリアルタイムで本物の正規サイトに転送し、正規のログインを成立させる。
- 正規サイトが発行したセッションCookie(認証済みトークン)を攻撃者が盗む。
- 攻撃者はそのセッションCookieを使って、以降MFAを再度求められることなくアカウントにアクセスできる。
なぜTOTP・プッシュ・SMSがすべて突破されるのか
AiTM攻撃の恐ろしさは、ユーザーが「正しく」認証してしまう点にあります。ユーザーは本物と信じて正しいパスワードと正しいOTPを入力し、正規サイトも「正当なログイン」として処理します。攻撃者が盗むのは、認証の後に発行されるセッションそのものです。したがって、TOTPもプッシュ承認もSMSも——ユーザーが手入力・承認する方式はすべてAiTMで突破されます。ワンタイムパスワードが「一度きり有効」であっても、そのワンタイムを攻撃者がリアルタイムで使ってしまうため、意味をなしません。
さらに深刻なのは、この攻撃が高度な技術力を必要としなくなっていることです。中継フィッシングを実現するツールキットがPhaaS(Phishing-as-a-Service)として出回り、攻撃者は購入するだけでAiTM攻撃を実行できます。
ユーザーも従来型MFAも「気づけない」攻撃
AiTMの本質的な怖さは、ユーザーが正しく認証していることです。パスワードもOTPも正しく入力しており、画面上は正常にログインできているように見えます。そのためユーザー本人も、TOTPやプッシュといった従来型MFAも、攻撃に気づけません。盗まれるのは「認証情報」ではなく「認証後のセッション」——この違いを理解することが、なぜフィッシング耐性MFAが必要なのかを理解する鍵になります。
5. フィッシング耐性MFA——FIDO2/パスキーはなぜ突破できないのか
ここまで見てきたMFA疲労攻撃・SIMスワップ・AiTM——これらすべてに耐えられるのが、FIDO2/WebAuthn・パスキーに代表されるフィッシング耐性MFAです。なぜ突破できないのか、その理由は2つの技術的特性にあります。
理由①:オリジンバインディング
FIDO2の認証は、正規ドメイン(オリジン)に暗号的に紐づいています。ブラウザ(WebAuthn)が認証器に対して署名を要求する際、アクセスしているサイトのオリジン情報が署名対象に含まれます。つまり、偽サイト(別ドメイン)では、そもそも正規サイト向けの有効な署名が生成できません。
これがAiTM攻撃を無効化します。攻撃者が通信を中継しようとしても、ユーザーがアクセスしているのは攻撃者のドメインであり、認証器はそのドメイン向けの署名しか作りません。その署名は正規サイトでは通用しないため、中継しても認証が成立しないのです。ユーザーが騙されて偽サイトにアクセスしても、認証の仕組み自体が「ドメインの違い」を検知して成立を拒否します。
理由②:秘密鍵が端末外に出ない
FIDO2では、認証に使う秘密鍵が認証器(スマホやセキュリティキー)の中に保管され、外部に送信されることが一切ありません。認証時に外へ出るのは、秘密鍵で生成された署名だけです。
これは、フィッシングで「入力させる対象が存在しない」ことを意味します。パスワードやOTPは「ユーザーが入力する情報」だから盗めますが、FIDO2の秘密鍵はそもそもユーザーすら知らず、どこにも入力しません。盗むべき「合言葉」が存在しないのです。
3つの攻撃がすべて無効になる理由
- MFA疲労攻撃:承認ボタンを押す方式ではなく、認証器での生体認証・PIN+暗号署名が必要。攻撃者がログインを試みても、通知を連打して承認させることができない。
- SIMスワップ:電話番号もSMSも一切使わないため、番号を奪われても無関係。
- AiTM:オリジンバインディングにより、偽サイト経由の中継では署名が成立しない。
FIDO Alliance、各国政府機関、大手プラットフォーマーがそろってパスキーへの移行を推進しているのは、この「フィッシング耐性」が現在の攻撃状況に対する本質的な回答だからです。
| 攻撃手口 | SMS OTP | TOTP | プッシュ承認 | FIDO2/パスキー |
|---|---|---|---|---|
| MFA疲労攻撃(プッシュ爆撃) | 影響小 | 影響小 | 脆弱 | 耐性あり |
| SIMスワップ | 脆弱 | 耐性あり | 耐性あり | 耐性あり |
| AiTM(中間者)攻撃 | 脆弱 | 脆弱 | 脆弱 | 耐性あり |
| フィッシング全般 | 脆弱 | 脆弱 | 条件により脆弱 | 耐性あり |
同期パスキーとデバイスバウンドパスキー
パスキーには、クラウド同期でデバイス間を共有できる「同期パスキー」と、セキュリティキー等の特定端末に固定される「デバイスバウンドパスキー」があります。いずれもオリジンバインディングによるフィッシング耐性を備えていますが、高保証が求められる特権アカウントにはデバイスバウンド型、利便性を重視する一般利用には同期型、といったように用途に応じた使い分けが可能です。自社の保護対象に応じて設計できる柔軟性も、FIDO2/パスキーの利点です。
6. 移行の実務——優先順位とフォールバックの設計
フィッシング耐性MFAが有効だとわかっても、全社一斉の移行は現実的ではありません。移行を成功させるための実務上のポイントを整理します。
移行の優先順位
リスクの高い領域から段階的に移行します。一般的な優先順位は次のとおりです。
- 特権アカウント・管理者:侵害された場合の影響が最大。最優先でFIDO2化する。
- 重要システム・機密データへのアクセス:個人情報・財務・知的財産を扱うシステム。
- リモートアクセス・VPN:外部から社内に入る境界。攻撃者の主要な標的。
- 全一般ユーザー:最終的には全社をフィッシング耐性MFAへ。
フォールバックの罠——ダウングレード攻撃に注意
移行で最も見落とされやすいのがフォールバック(代替手段)の設計です。FIDO2を導入しても、「認証器が使えないときはSMSに戻せる」という設定が残っていると、攻撃者はその弱い経路を狙います。これをダウングレード攻撃と呼びます。フィッシング耐性MFAを導入しても、弱いフォールバックが有効なままでは、全体の強度は「最も弱い経路」に引き下げられてしまいます。段階的に弱い方式を廃止し、フォールバックもフィッシング耐性を保つ設計にすることが不可欠です。
アカウント回復(リカバリー)の設計
認証器を紛失した際の回復手順も、フィッシング耐性を保つ必要があります。ここが弱いと、攻撃者は「認証器をなくした」と偽ってヘルプデスクに回復を申請し、そこを突破口にします。実際、攻撃グループScattered Spiderなどは、ヘルプデスクへのソーシャルエンジニアリングを主要な侵入手口としています。回復プロセスにも厳格な本人確認を組み込み、ヘルプデスクの対応手順を標準化することが重要です。
ユーザー教育との併用
技術対策に加え、承認前の確認や不審な通知の報告といった組織文化の醸成も併用します。ただし優先すべきはあくまで技術対策です。「ユーザーが気をつける」ことに頼る防御には限界があることを、これまでの3つの攻撃手口が示しています。
7. Keyperで実現するフィッシング耐性認証
Net Peaceは、本記事で述べたフィッシング耐性MFAへの移行を、製品と実務支援の両面から提供しています。
Keyper——FIDO2/パスキーによるフィッシング耐性認証
Keyperは、FIDO2/パスキーに対応したID・アクセス管理基盤です。オリジンバインディングと端末内の秘密鍵保護により、本記事で解説したMFA疲労攻撃・SIMスワップ・AiTMのいずれも技術的に無効化します。特権アクセス・クラウドサービス・VPNの認証を統合し、フィッシング耐性のある認証に一本化できます。前章で述べた段階的な移行計画とフォールバック設計——どの領域から移行し、弱い方式をいつ廃止するか——の策定も支援します。
UPAS ZTA——認証突破後の横展開も防ぐ
UPAS ZTAは、デバイス認証と条件付きアクセスにより、万一認証が突破された後の横展開を防止します。認証済みデバイスのみをネットワークに接続させ、未承認端末からのアクセスを遮断することで、多層的な防御を構成します。認証(誰が)とネットワークアクセス(どの端末で)の両面から守ることで、単一の突破が全体の侵害につながらない構造をつくります。
まとめ——「MFAを入れた」の先へ
MFA疲労攻撃・SIMスワップ・AiTMは、いずれも「MFAを導入済みの組織」を突破してきた実在の手口です。これらが示すのは、MFAの導入はゴールではなくスタートであるという事実です。そして、これら3つの攻撃すべてに耐えられるのは、現時点ではFIDO2/パスキーに代表されるフィッシング耐性MFAだけです。「MFAを入れたか」ではなく「フィッシング耐性のあるMFAを、リスクの高い領域から入れているか」——この問いに答えることが、次の一歩になります。Net Peaceは、その移行の設計から運用まで伴走します。