フェデレーション署名証明書の異常な有効期間

MEDIUM

説明

管理されているドメインとは異なり、フェデレーションドメインの場合、Microsoft AD FS サーバーのようなサードパーティのアイデンティティプロバイダーが、Entra ID の代わりに認証を処理します。この設定では、Entra ID はアイデンティティプロバイダーと信頼関係を確立します。

AD FS がアイデンティティプロバイダーとして機能する場合、デフォルトでは有効期間が 1 年の署名証明書を生成します。この期間を変更することもできますが、ほとんどの環境ではデフォルトの期間が一般的です。

したがって、このヒューリスティックは、アイデンティティプロバイダーの有効な設定との比較が求められる兆候を示すものとなりますが、直接的な障害の痕跡 (IoC) ではないことに注意することが重要です。その代わりに、Solorigate 攻撃などの特定の Entra ID 攻撃で観察される動作の兆候を示すものです。

さらに、この IoE は、1 年の期間 (オプションのデフォルト値) または環境内の通常の署名証明書と同じ期間の、不正な署名証明書を挿入する攻撃者は検出しない、という制限があることにも留意してください。

ソリューション

まず、フェデレーションドメインに関連付けられている署名証明書が正当であること、およびアイデンティティプロバイダーで指定されている設定を使用して自分が作成したものであることを確認します。

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 }

Entra ID との信頼関係があるアイデンティティプロバイダーで異なる有効期間を設定した場合は、それに合わせて対応するオプションの値を調整してください。または、この設定が自分の設定に固有のものである場合、除外によってこの署名証明書を許可することを検討してください。

別のシナリオでは、フォレンジック調査を実施して、フェデレーションドメインが侵害されているかどうかを確認し、その侵害の範囲を評価します。 このタイプのバックドアを仕掛けるのに必要な昇格された権限 (通常は [グローバル管理者] ロール、およびあまり知られていない Entra ロール) がある場合、Entra ID の完全な侵害が発生する可能性があります。

イベント発生時のフォレンジック分析のために証拠を保存した​後、以下を行います。

  • ドメインが不正である場合は、Remove-MgDomain を使用してドメインを削除します。
  • ドメインは正当だが、フェデレーション設定に悪意がある場合は、Remove-MgDomainFederationConfiguration を使用してフェデレーション設定を削除します。

このフェデレーションドメインに他の正当な署名証明書が含まれている場合は、後でそれらを手動で再作成してください。

インジケーターの詳細

名前: フェデレーション署名証明書の異常な有効期間

コード名: UNUSUAL-FEDERATION-SIGNING-CERTIFICATE-VALIDITY-PERIOD

深刻度: Medium

タイプ: Microsoft Entra ID Indicator of Exposure

MITRE ATT&CK 情報: