Language:
Microsoft Entra ID テナントは、外部ドメインとフェデレーションして、認証と承認のために別のドメインと信頼を確立することができます。組織はフェデレーションを使用して、Active Directory ユーザーのオンプレミス Active Directory Federation Services (AD FS) への認証を委任することができます (注意: この外部ドメインは Active Directory の「ドメイン」ではありません)。 しかし、悪意のある攻撃者が Microsoft Entra ID で昇格された権限を取得した場合、このフェデレーション機構を悪用し、バックドアを仕掛ける可能性があります。そのために、独自の設定を使って、正当なフェデレーション設定に独自の悪意のあるセカンダリトークン署名証明書を追加します。この攻撃により次のアクションが可能になります。
この露出インジケーター (IoE) は、プライマリトークン署名証明書とセカンダリトークン署名証明書 (存在する場合) 間の発行先または発行元の属性の不一致を検出します。このような不一致は、セカンダリトークン署名証明書が不正で悪意のある可能性があることを示している場合があります。
関連する露出インジケーター (IoE) [既知のフェデレーションドメインのバックドア] も参照してください。
侵害されたフェデレーションドメインから標的となった Microsoft Entra ID に認証証明を転送するために使用されるフェデレーションプロトコルは、WS-Federation または SAML のどちらかです。SAML を使用している場合、攻撃は「ゴールデン SAML」攻撃に似ていますが、主に次の点が異なります。
microsoft.directory/domains/allProperties/allTasks
および microsoft.directory/domains/federation/update
アクセス許可は、フェデレーションドメインを変更できる権限を管理者に与えます。2023 年 11 月時点で、潜在的なカスタムロールに加えて、次のビルトイン Microsoft Entra ID ロールがこのアクセス許可を保持しています。
APT29 脅威グループは、2020 年 12 月の SolarWinds に対する悪名高い攻撃 (「Solorigate」と呼ばれています) でこの方法を悪用しました。この攻撃については、Microsoft と Mandiant によって文書化されています。このテクニックは、次の記事でも文書化されています: 「Security vulnerability in Azure AD & Office 365 identity federation」、「How to create a backdoor to Azure AD - part 1: Identity federation」、「Deep-dive to Azure Active Directory Identity Federation」。
この検出結果は、攻撃者がバックドアを仕掛けた可能性を示しています。
まず、セカンダリトークン署名証明書を調べ、プライマリ証明書と一致しないと報告されている属性があればそれに細心の注意を払ってください。組織内でこれらの属性の正当性を確認してください。このセカンダリ証明書を含む、報告されたドメインのフェデレーション設定に加えられた変更について、Entra ID 管理者に確認してください。
セカンダリトークン署名証明書は、期限切れが近いプライマリ証明書をローテーションするためによく使用されます。明らかに悪意のある場合、または管理者が認識していない場合のみ、セキュリティ問題となります。これに該当する場合、フォレンジック分析によるインシデント対応手順を開始して、疑わしい攻撃を確認し、攻撃元と攻撃時刻を特定し、潜在的な侵入の範囲を評価します。
Azure ポータルでフェデレーションドメインのリストを見るには、[カスタムドメイン名] ブレードに移動し、[フェデレーション] 列でチェックマークのあるドメインを探します。悪意のある可能性があるドメインの名前は、検出結果でフラグが立てられているものと同じです。ただし、MS Graph API とは異なり、Azure ポータルではフェデレーションの技術的な詳細情報は表示されません。
MS Graph API の PowerShell コマンドレットGet-MgDomain
を使ってドメインをリストし、Get-MgDomainFederationConfiguration
を使ってそれらのフェデレーション設定をリストできます。次のようになります。
Connect-MgGraph -Scopes "Domain.Read.All"
Get-MgDomain -All | Where-Object { $_.AuthenticationType -eq "Federated" } | ForEach-Object { $_​ ; Get-MgDomainFederationConfiguration -DomainId $_.Id }
フォレンジック分析のために証拠を保存した後、悪意のあるセカンダリトークン署名証明書を削除することを推奨します。Microsoft はこの特定の証明書をフェデレーション設定から削除する直接的な方法を提供していないため、ドメインフェデレーションを無効にするか、影響を受けるドメインを削除してフェデレーション設定をクリアしてから再有効化するのが最も簡単な方法です。ただしこのプロセス中は、このフェデレーションドメインに依存しているユーザーは認証できないため、タイミングに注意してください。Microsoft Entra Connect を使用してフェデレーションを設定した場合は、それを使用してこの操作を実行します。手動で実行した場合は、Update-MgDomainFederationConfiguration
および最初にリセットしたのと同じ方法を使用します。Microsoft の「AD FS 証明書の緊急ローテーション」にあるこの修正ガイドに従うことができます。
操作を確認するには、この露出インジケーター (IoE) で報告された検出結果が解決されたことを確認してください。 さらに、攻撃者がバックドアなどの他の持続的なメカニズムを設定している可能性を予測することも重要です。これらの他の脅威も特定して排除するために、インシデント対応のエキスパートに支援を求めてください。
このタイプの攻撃は、Microsoft Entra ID の正常で正当な機能であるフェデレーションを悪用していることに注意してください。今後の攻撃を防ぐために、フェデレーション設定を変更できる管理者の数を制限してください。攻撃者がそのようなバックドアを仕掛けるには高い権限が必要であるため、これは予防的な対策になります。特定のアクセス許可とロールのリストについては、脆弱性の説明を確認してください。
名前: フェデレーション署名証明書の不一致
コード名: FEDERATION-SIGNING-CERTIFICATES-MISMATCH
深刻度: High
タイプ: Microsoft Entra ID Indicator of Exposure