Microsoft – MFA の AuthQuake という欠陥:ブルートフォース攻撃を検知できない

Microsoft MFA AuthQuake Flaw Enabled Unlimited Brute-Force Attempts Without Alerts

2024/12/11 TheHackerNews — Microsoft の MFA 実装に、深刻なセキュリティ脆弱性があることが、サイバー・セキュリティ研究者たちにより報告された。この脆弱性を悪用する攻撃者は、MFA 保護を容易に回避し、被害者のアカウントへの不正アクセスを達成するという。Oasis Security の研究者である Elad Luz と Tal Hason は、「このバイパスは単純だった。実行に約1 時間を要したが、ユーザーの操作は不要であり、通知は生成されなかった。したがって、アカウント所有者は、なんの兆候も検出できなかった」と、 The Hacker News に共有されたレポートで述べている。


この問題には、AuthQuake というコード名が付けられ、 Oasis から Microsoft へと、責任を持って開示された後の、2024年10月に解決された。

Microsoft は MFA を介することで、さまざまな方法よりユーザー認証をサポートしている。その中の1 つの方法は、ユーザーが資格情報を提供した後に、認証アプリから6桁のコードを入力させるものだ。この仕組みでは、1回のセッションにおいて、最大で 10回までの試行失敗が許可される。

Oasis が特定した脆弱性の根本は、レート制限がないこと、そして、これらのワンタイム・コードの提供/検証における間隔が長いことだ。つまり、脅威アクターたちは新しいセッションを急いで生成し、すべての計算可能な組み合わせ (100 万) を列挙できるが、ログイン試行の失敗について被害者に警告されることはない。

注目すべき点は、このようなコードはタイム・ベースであり、TOTPs (time-based one-time passwords) とも呼ばれ、カレント・タイムをランダム性のソースとして生成されることだ。さらに、コードがアクティブなのは約 30 秒間のみであり、その後はローテーションされていく。

研究者たちは、「ただし、バリデーターとユーザーの間には、時間差や遅延が発生する可能性があるため、より長い時間枠をバリデーターが受け入れる状況が推奨される。つまり、この時間枠が短いと、1つの TOTP コードが、30 秒以上にわたって有効となる可能性が生じる」と述べている。


Microsoft のニューヨーク拠点では、タイム・ベースのコードが、最大で3 分間も有効であることが判明した。したがって、延長された時間枠を悪用する攻撃者は、6桁のコードを解読するために。複数回のブルートフォース攻撃を開始できるというシナリオが生まれた。

研究者たちは、「レート制限を導入し、それが適切に実装されていることの確認が重要である。さらに、レート制限だけでは不十分となる可能性がある。つまり、試行の失敗に際して、アカウントはロックされるべきだ」と指摘している。

その後に Microsoft は、試行が何回か失敗すると発動されるという、より厳格なレート制限を実施した。Oasis も、この新しい制限は、約半日にわたって続くと述べている。

Keeper Security の CISO である James Scobey は、「Microsoft の MFA に存在していた、AuthQuake 脆弱性が示唆するのは、MFA の展開はセキュリティの本質ではなく、適切なコンフィグレーションが必要だという点だ」とコメントしている。

彼は、「間違いなく、MFA はパワフルな防御手段である。ただし、その有効性が依存するものとして、ブルートフォース攻撃を阻止するレート制限や、ログイン失敗時のユーザー通知といった、重要な項目の設定がある。これらの機能は、オプションではなく、不可欠なものである。なぜなら、それによりユーザーからの可視性が高められ、疑わしいアクティビティに対する早期の発見/対応が実現されるからだ」と指摘している。