2023 年 11 月、台湾のサイバーセキュリティソフトウェアベンダーである CyCraft のセキュリティソフトウェアエンジニア孫維崗 (Gary Sun) は、 日本でのセキュリティカンファレンス2023 AVTokyo で、Microsoft Entra ID に関する 研究成果「ゲストアカウントからグローバル管理者への権限昇格:Microsoft Entra ID P2 機能を通した Azure IAM の悪用」(From Guest to Global Admin: Abuse Azure IAM with Microsoft Entra ID P2 Features)を発表しました。
マイクロソフトは 2023 年末に Azure AD を Microsoft Entra ID と名称変更し、ID とアクセス管理の製品ラインナップを拡張しました。元の Azure AD は多くの企業が身元識別とアクセス権の管理 (Identity and Access Management,以下IAM)を行うために使用していましたが、Microsoft Entra ID は、アイデンティティガバナンス (Identity Governance) のコンセプトに基づいた、より精密な身元識別と管理機能を提供しています。これは、Identity Governance に基づくライフサイクルの自動化管理を行い、現行の ID やアクセス許可のギャップなどの問題解決を目指しています。
Microsoft Entra ID の操作の際にはどんな点に注意すべきでしょうか。CyCraft の研究チームは、Microsoft Entra ID の新機能には、権限を悪用した攻撃のリスクが存在することを発見しました。この記事では、その潜在的攻撃経路(Attack Path) とミティゲーション (Mitigation)について記述します。攻撃が発生する前に備えができるようにするためです。
Microsoft Entra ID はマイクロソフトの身元識別およびアクセス管理のためのクラウドサービスです。社員、提携パートナ、クライアントの身元を簡単かつ迅速に管理する機能を備えています。Microsoft Entra ID はマイクロソフトの SaaS アプリケーション、カスタマイズした企業のアプリケーション、その他のクラウドアプリケーションなど様々なアプリケーションとの接続が可能で、同時にハイブリッドクラウドならびにマルチクラウド環境をサポートし、オンプレミスのアカウント、アプリケーション、リソースとの整合を実現しています。
Entra ID の使用場面は広範囲に及ぶため、その複雑さは管理をより難しくし、業務に応じた適切な権限を分配するのは簡単なことではありません。マイクロソフトの情報セキュリティチームのレポート 2023 Microsoft State of Cloud Permissions によると、実際に使用されている特権権限はわずか約5% で、アカウントの約 50% が全リソースを制御できる高権限をもっていると示しています。このレポートではこのようなアカウントをスーパー管理者(Super Admin)と呼んでいます。時間が経ち組織が拡張するにつれ、業務量も増え、人員も入れ替わるなどの要因により、さらに多くの権限が付与されることになります。権限付与の状況を定期的に検査しなければ、アクセス許可の重大なギャップ(Permission Gap,図1参照)が生じてしまいます。
そのため、可視化されたツールで企業のアカウントと権限を検査することは非常に重要です。現在、Entra ID を検査できる IAM ツールは、AzureHound と StormSpotterがあります。これらはいずれもIAM を画像化し、わかりやすい関連図にしてユーザが状況を把握できるという機能があります。
しかし、AzureHound も StormSpotter も Microsoft Entra ID の ID 管理プランを検査できず、潜在的なリスクを見つけ出すことはできません。また、これに関連したテーマの研究もあまり多くありません。CyCraft の研究チームは Entra ID の発生しうるすべての攻撃経路を検査し、攻撃者が権限を利用して攻撃する可能性のある機能は 3 つあると結論付けました。
Entra ID Identity Governance と呼ばれる ID のライフサイクル、アクセス権のライフサイクル、特権 ID のライフサイクルを管理するための機能は企業の IT 管理者の立場に立って作られ、多くの ID 管理機能と制御権を持ち、組織の本人認証とアクセス管理を保護、管理しています。例えば、条件付きアクセス (Conditional Access)、特権 ID 管理 (Privileged Identity Management, PIM) などです。ここで注意すべき点は、Entra ID と Azure は Identity 設定を共有しますが、管理面では分かれています。つまり、Azure の役割は Azure リソースの管理で、Entra ID の役割は本人認証プラットフォームの管理です。
CyCraft が IAM と直接関連し、かつ攻撃経路となり得るすべての Entra ID 機能を検査したところ、 3 つの機能、すなわち、権限管理 (Entitlement Management)、管理単位 (Administrative Unit) 、ロールの割り当て (Eligible Assignments) に潜在的リスクがあることがわかりました。この 3 つの機能はいずれもロールベース型アクセス制御 (Role-based Access Control,RBAC) です。その管理方法は、ロールが権限を定義し、ユーザが付与されるロールを特定範囲内だけに限定し、ロール、リソース、権限を攻撃経路上の重要ノードとして突出させるものです。
Entitlement Management では、ユーザが作業フローと権限分配を自動的にリクエストでき、 ID のライフサイクルを管理しています。部門を跨いで連携する場合、権限分配は複雑になり、異なる部門の具体的な権限分配の状況を把握しきれなくなります。そのため、IT 管理者は他部門の人員分配を十分に理解せずに、一部の権限割り当ての権利を部門主管者に委ね、部門主管者が、誰がどのリソースにアクセスするかを決定するという状況がよく発生します(図2)。
この機能において、私たちはリソースのカテゴリが Group となり得ることを発見しました。攻撃者が Catalog または Access Package の高権限を有する Group の制御に成功すると、この経路を通じて権限を昇格し、感染したアカウントに Resource Role を追加し高権限 Group を制御できるようにすることができます(図 3)。
Administrative Unit は、ユーザが Entra ID ロールの作用を特定範囲内に制限するもので、管理者に無視されがちな権限の一つです。図 4 が示すとおり、ユーザが Group Admins ロールを持つ時には、特定の Group 範囲で作用しますが、Entra ID のデフォルト範囲は Tenant なので、この機能を通して特定の範囲を設定することができます。そのため、攻撃者はメンバーを Group に追加するだけでその Group の Group Admins 権限を取得でき、Group を操作できるようになるのです。
Eligible Assignments はロール割り当てのライフサイクルを管理し、ジャストインタイム (just-in-time, JIT) の権限分配を実現しています。ロール分配の際に、ユーザには操作の権限がないため、アクティベートしないとロールの権限を使用できません(Windows の「管理者 ID で実行」または Linux の sudo コマンドに類似)。ID のロール権限を有効にすると、設定に基づき認証が行われ、ログとして残ります。
しかし、ロール権限のアクティベートの際の認証はこの機能のデフォルト設定ではありません(図5)。そのため攻撃者は事前にロールの設定を調べ、権限の取得ができないか模索します。これは攻撃の成功率を上げ、不必要な痕跡を残さないためです。
CyCraft の研究チームは Identity Governance フローに基づき、ハッカーがどのように権限を取得して攻撃するかを調べました。この検証については図 6 をご確認ください。攻撃者はまず、Catalog Owner 権限を持つアカウント【akua】を制御します。この Catalog には、グローバル管理者 (Global Admin) 権限を有する Group【Dead End】が含まれています。攻撃者は Resource Role を追加し、侵入したアカウントを Group のメンバーにし、これを利用してグローバル管理者の権限を取得できるのです(高権限ロールの詳細は以降の文章に記載します)。
CyCraft は、API Permission の権限管理を強化することにより、上記の攻撃経路のミティゲーションを行い、企業と各界のユーザが事前の備えができるようにすることが有効であると考えています。権限を与えられた API パーミッションは、異なるアプリケーション間でも操作をすることができ、この方法でサードパーティと企業が権限にアクセス可能となってしまいます。これは攻撃者がよく利用する手法であるため、企業の IT 管理者が API パーミッションが合理的であるかを確認することは、基本的かつ効果的な緩和方法の 1 つであるといえます。
国際的なリサーチ会社 Gartner は 2022 年末に持続的脅威暴露管理 (Continuous Threat Exposure Management, CTEM) ポリシーを発表しました。これは商業価値と IT 管理方法を結び付け、情報セキュリティのポリシーを見直したもので、情報セキュリティ防御メカニズムのパラダイムシフトの先駆けとなるものです。CTEM ポリシーは、環境内の「攻撃経路」に注意すべきことを強調しています。攻撃インシデントが発生する前に、あらかじめ攻撃される可能性のある経路を検査し、絶えず訓練と検査を行うことで、積極的な防御を行うことができるというものです。
CyCraft 研究チームは CTEM のこの能動的防御精神に則り、今回 Microsoft Entra ID の攻撃経路について研究しました。私たちは、ユーザが新製品や新機能を使用する際は、その前にその製品やサービスの適用範囲と潜在的リスクを理解するように呼びかけています。また、その研究成果を活かし開発された CyCraft の「XCockpit Identity」サービスでは、調査により具体的で実行可能なミティゲーションを提示し、攻撃される前にその脆弱性を補完し、防御を固めるようサポートしています。「彼を知り己を知れば百戦殆うからず」、積極的な防御で、サイバー攻撃からその身を守りましょう。
[注] XCockpit Identity の Entra ID 対応は 2024 年 9 月を予定しております。本記事における研究は、テスト機能により実施されました。
Writer: CyCraft
CyCraft(サイクラフト)は、AIによる自動化技術を専門とするサイバーセキュリティ企業。2017年に設立され、台湾に本社、日本とシンガポールに海外拠点を持つ。アジア太平洋地域の政府機関、警察・防衛機関、銀行、ハイテク製造業にサービスを提供している。CyCraft の AI技術 と機械学習技術によるソリューションが評価され、CID グループ とテマセク・ホールディングス旗下のパビリオンキャピタルから強力なサポートを獲得し、また、国際的トップ研究機構である Gartner、 IDC、Frost & Sullivan などから複数の項目において評価を受けている他、国内外の著名な賞をいくつも受賞している。また、国内外を含む複数のセキュリティコミュニティ、カンファレンスに参画し、長年にわたりセキュリティ業界の発展に尽力している。