Azure API Management の脆弱性:テナントを超えた不正アカウント作成の危険性

はじめに

Microsoft Azure API Management (APIM) の開発者ポータルに、管理者設定を迂回して複数のテナント間でアカウントを登録できてしまう重大な脆弱性が発見されました。ユーザー登録が明示的に無効化されている場合でも攻撃は成功し、この問題に対しMicrosoftは「仕様通りの動作」であるとの見解を示しています。

脆弱性の詳細

この脆弱性は、フィンランドのサイバーセキュリティ企業 Bountyy Oy のセキュリティ研究者 Mihalis Haatainen 氏によって発見されました。Basic認証が構成されているAzure APIM開発者ポータルインスタンスに影響します。管理者がポータルUIからユーザー登録を無効にしているかどうかにかかわらず、攻撃者は不正なアカウントを作成することが可能です。

根本的な原因は以下の2点にあります。

  • UI設定とAPI機能の乖離: AzureポータルUIでサインアップをオフにしても、登録フォームが非表示になるだけで、基盤となるサインアップAPIエンドポイントは完全に機能したままです。
  • テナント検証の欠如: サインアップAPIが登録リクエストの発信元が同一テナントであることを検証しないため、単純なHTTPリクエスト操作によってテナントを横断したアカウント作成が可能になります。

攻撃手法とその影響

この脆弱性を悪用するために高度な技術は必要ありません。攻撃者は、サインアップが有効になっている任意のAPIM開発者ポータル、または自身のAPIMインスタンスにアクセスできるだけで攻撃を開始できます。正規のサインアップリクエストを傍受し、Hostヘッダーをターゲットインスタンスを指すように変更するだけで、サインアップが無効化されているはずの被害者ポータルでアカウントを正常に登録できます。このクロステナントバイパスは、サインアップエンドポイントがテナント境界の検証を強制せず、Hostヘッダーに基づいてリクエストを処理するために発生します。

一度登録されると、攻撃者は機密性の高いAPIドキュメント、サブスクリプションキー、その他開発者ポータルを通じて公開されているリソースにアクセスできる可能性があります。

Microsoftの「仕様」という見解

研究者はこの脆弱性を2025年9月30日と11月1日の2回にわたりMicrosoft Security Response Center (MSRC) に報告しましたが、いずれもMSRCによって「仕様通りの動作であり、セキュリティ脆弱性ではない」と判断されクローズされました。

Microsoftがこの問題に対処することを拒否したため、研究者はCERT-FIに報告し、その後2025年11月26日にこの脆弱性を公表しました。11月27日にはMITREにCVE識別子が要求されています。

影響を受ける環境と対策

脆弱な環境

以下の条件を満たすAPIMインスタンスは脆弱性の影響を受けます。

  • Basic認証が構成され、開発者ポータルがアクセス可能な状態である場合(UIでのサインアップ設定に関わらず)。

この脆弱性により、テナントを横断したアカウント作成が可能になり、管理者のセキュリティ制御が迂回され、内部APIドキュメントやサブスクリプションキーが不正な外部攻撃者に公開される可能性があります。

影響を受けない環境

  • Azure ADまたはOAuth認証のみを使用しているAPIMインスタンス。
  • 開発者ポータルが完全に無効化されているインスタンス。
  • Basic認証プロバイダーが完全に削除されているインスタンス。

推奨される対策

組織は以下の対策を直ちに実施すべきです。

  • UIでサインアップをオフにするだけでなく、Basic認証アイデンティティプロバイダーをAPIMインスタンスから完全に削除すること。
  • 既存の開発者ポータルアカウントを監査し、作成タイムスタンプとパターンをレビューして不正な登録がないか確認すること。
  • Azure AD認証を排他的なアイデンティティプロバイダーとして実装し、適切なテナント境界を強制することで脆弱性を排除すること。
  • ポータルのサインアップ活動を定期的に監視し、定期的なアカウント監査を実施すること。

元記事: https://gbhackers.com/azure-api-management-vulnerability-2/