ある日、スマートフォンに突然こんな通知が届きました。
「Microsoft Authenticator: サインインを承認しますか?」
身に覚えがない。
自分は今、PCの前に座っていない。
あるいはサインインしようとした記憶がない。
このシナリオ、他人事ではありません。
これは MFA 疲労攻撃(MFA Fatigue Attack) と呼ばれる、近年急増している攻撃手法のサインである可能性が高いのです。
本記事では、この通知が来たとき「何が起きているのか」を解説し、管理者がすぐに取るべき初動対応と、再発を防ぐための設定方法を詳しく説明します。
何が起きているのか? —— MFA 疲労攻撃の手口
MFA(多要素認証)はなぜ狙われるのか
Microsoft の調査によると、MFA を有効にすることで、多くの ID ベース攻撃(パスワードスプレーやフィッシングなど)を大幅に低減できます。
そのため、攻撃者はパスワードを入手しても MFA の壁に阻まれるケースが増えています。
そこで攻撃者が編み出した戦術が MFA 疲労攻撃(MFA Spam / MFA Bombing) です。
MFA 疲労攻撃とは
Japan Azure Identity Support Blog では、この攻撃を次のように説明しています。
「MFA 疲労攻撃とは、攻撃者が繰り返し何度も MFA 要求を発生させ、その要求を受け取ったユーザーが誤って MFA 要求を承認することを狙った手口です。」
攻撃の流れは以下の通りです。
1. 攻撃者がフィッシングや情報漏洩などでパスワードを入手
↓
2.繰り返しサインインを試みて、MFA プッシュ通知をスマホへ大量送信
↓
3.ユーザーが「通知がうるさい」「間違えて」「自分のかと思って」承認ボタンを押す
↓
4.攻撃者がアカウントに侵入成功
なぜこの攻撃が成立するのか?
従来のプッシュ通知型 MFA では、ユーザーが実際にサインイン画面の前にいなくても、スマホ上で「承認」を押すだけで認証が完了してしまう という仕組みの弱点を突いています。
参考: Microsoft Authenticator の MFA 疲労攻撃対策 – 数値の一致による MFA が有効化されます
実際の通知が来たときの判断ポイント
| 状況 | 意味 |
|---|---|
| 自分がサインインしようとしている最中に届いた | 正規の通知(自分の操作による) |
| 何もしていないのに突然届いた | 要注意! 攻撃者がサインインを試みている可能性 |
| 同じ通知が何度も連続して届いた | 高確率で MFA 疲労攻撃 |
| 地理的な場所が自分のいる場所と異なる | 不正アクセスの強い証拠 |
すぐにやること —— 管理者の初動対応
身に覚えのない通知が届いた場合、以下の手順で迅速に対応してください。
ステップ 1:
絶対に「承認」を押さない(ユーザーへの周知も含む)
まず最重要事項として、心当たりのない通知は絶対に「承認」しないことをユーザーに周知徹底してください。
不審な通知が届いた場合は「拒否」を選択し、IT 部門へ報告するフローを確立しておくことが重要です。
ステップ 2:
Entra 管理センターでサインインログを確認する
Microsoft Entra 管理センター(https://entra.microsoft.com)にサインインし、対象ユーザーのサインインログを確認します。
確認手順:
- ユーザー → すべてのユーザー から対象ユーザーを選択
- サインイン ログ をクリック
- 不審なサインイン試行(失敗したもの、見知らぬ場所からのものなど)を確認
チェックポイント:
- サインイン元の IP アドレス・場所
- 使用されたアプリケーション
- 認証の結果(成功 / 失敗 / 中断)
- タイムスタンプと頻度
参考: Entra ID 初学者向けシリーズ第 2 弾 – ID Protection 入門 – その 2: リスクの検出/確認/対応
ステップ 3:
セッションを即時切断する(サインイン セッションの失効)
攻撃者がすでに侵入してしまっている可能性がある場合、または侵入リスクが高いと判断した場合は、すぐにユーザーのサインイン セッションを失効させます。
方法1:Entra 管理センターから GUI で操作
- ユーザー → すべてのユーザー から対象ユーザーを選択
- 認証方法 → 上部メニューから サインイン セッションを失効させる を選択
これにより、ユーザーの更新トークンおよびブラウザー セッション Cookie が無効化されます。
方法2:PowerShell(Microsoft Graph)で操作
# Microsoft Graph PowerShell SDK が必要
Connect-MgGraph -Scopes “User.ReadWrite.All”
# UPN またはオブジェクト ID でユーザーを指定
Revoke-MgUserSignInSession -UserId “user@contoso.com”
注意:セッション失効の制限事項
重要な注意点があります。
「アクセス トークンは、一般的な 1 時間の有効期間 よりも短い期間内に取り消す必要がある場合、セキュリティ リスクを引き起こす可能性があります。」
つまり、更新トークンを失効させても、既存のアクセス トークンは即座に無効化されない場合があります(通常は最大約1時間有効)。
ただし、継続的アクセス評価(CAE)が有効なサービスでは、条件に応じて即時にアクセスが遮断されることもあります。
ステップ 4:
パスワードをリセットする
攻撃者がパスワードを知っているからこそ攻撃が成立しています。
セッション切断と同時に、パスワードのリセットを必ず実施します。
- Entra 管理センターで対象ユーザーを選択
- パスワードのリセット をクリック
- 一時パスワードを発行し、ユーザーへ安全な方法で通知
- 次回サインイン時に強制変更させる
パスワードリセットにより、攻撃者は古いパスワードを使った攻撃ができなくなり、ユーザーリスクのスコアも低下します。
ステップ 5:
必要に応じてアカウントを一時無効化する
重大な侵害が疑われる場合は、調査が完了するまでアカウントを一時的に無効化することを検討します。
# アカウントを無効化
Update-MgUser -UserId "user@contoso.com" -AccountEnabled:$false
再発防止のための管理センター設定
初動対応が完了したら、次は同じ攻撃が起きないよう設定を強化します。
設定1. 「数値の一致(Number Matching)」を有効化する ← 最重要
MFA 疲労攻撃への最も効果的な対策が 数値の一致(Number Matching) 機能です。
仕組み:
- サインイン画面に 数字 が表示される
- ユーザーは Microsoft Authenticator アプリにその数字を 手入力 して認証完了
この仕組みにより、ユーザーが実際にサインイン画面の前にいなければ認証できないため、意図しない承認を大幅に防止できます。
「仮にユーザーの手元の Microsoft Authenticator に、見知らぬ MFA 要求が通知された場合であっても、ユーザーはこれを許可することができません。
なぜならユーザーは画面の前におらず、Microsoft Authenticator に入力するための正しい数字を知りようがないからです。」
2023年5月以降、多くのテナントで既定で有効化されていますが、設定によっては変更されている可能性があるため確認が必要です。
設定手順:
- Entra 管理センター(https://entra.microsoft.com)にサインイン
- 保護 → 認証方法 → Microsoft Authenticator を選択
- 構成 タブを開く
- プッシュ通知に番号の一致が必要 を 有効 に設定
- 保存 をクリック
参考: Microsoft Authenticator の MFA 疲労攻撃対策 – 数値の一致による MFA が有効化されます
参考: Microsoft Entra ID での認証方法の保護
設定2. アプリ名・地理的な場所を Authenticator に表示する
数値の一致と組み合わせることで、ユーザーが不正アクセスを自ら気づけるようになります。
| 機能 | 効果 |
|---|---|
| アプリケーション名の表示 | サインイン先のアプリが Authenticator に表示される |
| 地理的な場所の表示 | サインイン元の IP ベースの位置情報が表示される |
設定手順(数値の一致と同じ画面):
- プッシュ通知とパスワードレス通知にアプリケーション名を表示する → 有効
- プッシュ通知とパスワードレス通知に地理的な場所を表示する → 有効
例えば、ユーザーが東京にいるのに「ブラジル / リオデジャネイロ」からのアクセスと表示されれば、不正アクセスに気づくことができます。
設定3. Entra ID Protection でリスクベースの条件付きアクセスを構成する
Entra ID Protection を活用することで、不審なサインインパターンを自動検出し、強制的にパスワード変更を要求したり、アクセスをブロックしたりできます。
ユーザー リスク ポリシーの設定例:
- ID 保護 → ダッシュボード → ユーザー リスク ポリシー を開く
- ユーザー リスクが「高」の場合に パスワードのリセットを要求 を設定
サインイン リスク ポリシーの設定例:
- ID 保護 → ダッシュボード → サインイン リスク ポリシー を開く
- サインイン リスクが「中以上」の場合に MFA を要求 を設定
これにより、MFA 失敗が繰り返された攻撃対象ユーザーを自動的に「ユーザー リスク有り」と判定し、次回サインイン時に強制パスワード変更が求められます。
参考: Entra ID 初学者向けシリーズ第 2 弾 – ID Protection 入門 – その 2: リスクの検出/確認/対応
参考: リスク ポリシーを構成して有効にする
設定4. SMS・音声通話 MFA からの脱却を推進する
SMS や音声通話による MFA は、公衆交換電話網(PSTN)を利用しているため、SIMスワップ攻撃やフィッシングに弱いなどの理由から、より強固な認証手段への移行が推奨されています。
Microsoft では、より安全な認証手段への移行を推奨しています。
認証方法の安全レベル比較:
| レベル | 方法 | 推奨度 |
|---|---|---|
| Good | SMS・音声通話 | △ 最低限 |
| Better | Microsoft Authenticator プッシュ通知(数値の一致あり) | ○ 推奨 |
| Best | パスワードレス(パスキー、FIDO2、Windows Hello) | ◎ 最推奨 |
参考: Entra ID 初学者向けシリーズ 第 3 弾 – Microsoft Authenticator アプリ入門
参考: 認証に電話網を使うのはそろそろやめよう
設定5. セキュリティの既定値群またはMFA必須の条件付きアクセスを確認する
管理者アカウントや特定の条件では MFA が必須となる方向で強化されていますが、実際の適用状況はテナント設定やポリシーに依存します。
一般ユーザーやその他のアプリに対する MFA の適用状況は、テナントの設定によって異なります。
確認・設定手順:
- Entra 管理センター → ID → 概要 → プロパティ
- セキュリティの既定値群の管理 から有効化状況を確認
- Entra ID P1 以上のライセンスがある場合は、条件付きアクセスポリシーで全ユーザーへの MFA 適用を設定
参考: Microsoft Entra ID のセキュリティの既定値を構成する
参考: MFA 義務付け (フェーズ 2) の開始
対応フローのまとめ
不審な MFA 通知を受信・報告を受けた
│
▼
1.承認しない(拒否を押す)
│
▼
2.Entra 管理センターでサインインログを確認
│
├── 侵害の証拠がある → アカウントを一時無効化
│
▼
3.セッションを即時失効させる
(Entra 管理センター or PowerShell)
│
▼
4.パスワードをリセットする
│
▼
5.ユーザーへ状況説明・安全なパスワードで再設定
│
▼
6.設定の強化(数値の一致、ID Protection など)
│
▼
7.監査ログ保全・インシデントレポート作成
まとめ
| ポイント | 内容 |
|---|---|
| MFA 疲労攻撃を知る | 攻撃者はすでにパスワードを持っており、大量 MFA 通知でユーザーの誤承認を狙う |
| 通知が来たらまず確認 | 心当たりがなければ絶対に「承認」しない |
| 初動の最優先事項 | サインインログ確認 → セッション失効 → パスワードリセット |
| 最大の防御策 | 数値の一致(Number Matching)の有効化 |
| 中長期的な対策 | ID Protection の活用・パスワードレス認証への移行 |
MFA は非常に強力なセキュリティ対策ですが、設定と運用が伴わなければその効果が半減します。
本記事で紹介した設定を今日から確認・実施し、組織のアカウントを守りましょう。
免責事項:Microsoft 365の機能や仕様は変更される可能性がありますので、実施前には最新の公式ドキュメントをご確認ください。

