Share via


Active Directory ドメイン コントローラー上の DPAPI バックアップ キー

Active Directory データベースには、DPAPI バックアップ キーと呼ばれる一連のオブジェクトが含まれています。 これらのオブジェクトには、次のものが含まれます。

  • BCKUPKEY_P シークレット
  • BCKUPKEY_PREFERRED シークレット
  • BCKUPKEY_guid1
  • BCKUPKEY_guid2

これらのオブジェクトはスキーマ クラス "secret" の一部であり、ドメイン パーティション内の "CN=System,DC=contoso,DC=com" コンテナーに存在します。

通常、ドメイン ユーザーは、自分のパスワードから派生したキーを使用して、DPAPI で保護されたデータを暗号化します。 ただし、ユーザーが自分のパスワードを忘れた場合、またはパスワードが別のデバイスから管理的にリセットまたはリセットされた場合、ユーザーの新しいパスワードから派生した新しいキーを使用して、以前に暗号化されたデータを復号化できなくなります。

この場合でも、Active Directory ドメイン コントローラーに格納されているバックアップ キーを使用して、データの暗号化を解除できます。 その後、ユーザーの新しいパスワード派生キーを使用して再暗号化できます。 つまり、ドメインの DPAPI バックアップ キーを持つすべてのユーザーは、ユーザーのパスワードが変更された後でも、任意のドメイン ユーザーの DPAPI で暗号化されたデータを復号化できます。

Active Directory ドメイン コントローラー上の DPAPI バックアップ キーは、ドメインの初期作成時に 1 回だけランダムに生成されます。

これらのキーの機密性が高いため、これらのキーへのアクセスを保護し、Active Directory ドメイン全体で最も機密性の高い情報の 1 つと見なす必要があります。 既定では、これらのキーへのアクセスはドメイン管理者に制限されます。

現在、これらの DPAPI バックアップ キーをドメイン コントローラーで変更またはローテーションする方法は、公式にサポートされていません。 ドキュメント MS-BKRP に従って、サード パーティは、新しい DPAPI バックアップ キーを作成し、新しいキーをドメインの優先キーに設定するアプリケーションまたはスクリプトを開発する機能を持っています。 ただし、これらのサード パーティのソリューションは、Microsoft ではサポートされていません。

ドメインの DPAPI バックアップ キーが侵害された場合は、新しいドメインを作成し、その新しいドメインにユーザーを移行することをお勧めします。 悪意のあるアクターが DPAPI バックアップ キーにアクセスできる場合は、ドメインへのドメイン管理者レベルのアクセス権を取得し、そのリソースへのフル アクセス権を持っている可能性があります。 攻撃者は、現在のアクセス レベルを持つ他のバックドア システムをドメインにインストールする可能性もあります。そのため、新しいドメインに移行することをお勧めします。

Active Directory 管理のベスト プラクティスは、このシナリオに対する防御です。 ユーザーにドメイン アクセスを許可する場合は、ユーザーに必要な最小限のアクセス レベルを指定します。 また、ドメイン コントローラー自体を保護するのと同じくらい注意深く Active Directory バックアップを保護することも重要です。

関連項目

CNG DPAPI

MS-BKRP: BackupKey リモート プロトコルに関するドキュメント