次の方法で共有


ユーザー アカウント制御のしくみ

ユーザー アカウント制御 (UAC) は、Windows セキュリティの重要な部分です。 UAC は、悪意のあるコードが管理者特権で実行される機能を制限することで、マルウェアのリスクを軽減します。 この記事では、UAC のしくみとエンド ユーザーとの対話方法について説明します。

UAC プロセスと対話

UAC では、 管理者アクセス トークン を必要とする各アプリケーションで、エンド ユーザーに同意を求める必要があります。 唯一の例外は、親プロセスと子プロセスの間に存在するリレーションシップです。 子プロセスは、親プロセスからユーザーのアクセス トークンを継承します。 ただし、親プロセスと子プロセスの両方に同じ 整合性レベルが必要です。

Windows は、整合性レベルをマークすることでプロセスを保護します。 整合性レベルは、信頼の測定値です。

  • 高整合性アプリケーションは、ディスク パーティション分割アプリケーションなど、システム データを変更するタスクを実行するアプリケーションです。
  • 低整合性アプリケーションは、Web ブラウザーなど、オペレーティング システムを侵害する可能性があるタスクを実行するアプリケーションです

整合性レベルが低いアプリケーションでは、整合性レベルが高いアプリケーションのデータを変更できません。 標準ユーザーが管理者アクセス トークンを必要とするアプリを実行しようとすると、UAC では、ユーザーが有効な管理者資格情報を提供する必要があります。

このプロセスのしくみを理解するために、Windows サインイン プロセスを詳しく見てみましょう。

サインイン プロセス

次の図は、管理者のサインイン プロセスと標準ユーザーのサインイン プロセスの違いを示しています。

UAC Windows サインイン プロセスを説明する図。

既定では、標準ユーザーと管理者ユーザーの両方がリソースにアクセスし、標準ユーザーのセキュリティ コンテキストでアプリを実行します。
ユーザーがサインインすると、システムはそのユーザーのアクセス トークンを作成します。 アクセス トークンには、特定のセキュリティ識別子 (SID) や Windows 特権など、ユーザーに付与されるアクセス レベルに関する情報が含まれます。

管理者がログオンすると、ユーザーに対して 2 つの個別のアクセス トークン (標準ユーザー アクセス トークン管理者アクセス トークン) が作成されます。 標準ユーザー アクセス トークン:

  • 管理者アクセス トークンと同じユーザー固有の情報が含まれていますが、管理 Windows 特権と SID は削除されます
  • 管理タスクを実行しないアプリケーションを起動するために使用されます (標準ユーザー アプリ)
  • 、explorer.exeプロセス を実行してデスクトップを表示するために使用されます。 Explorer.exe は、他のすべてのユーザー開始プロセスがアクセス トークンを継承する親プロセスです。 その結果、ユーザーが完全な管理アクセス トークンを使用するようにアプリを承認するための同意または資格情報を提供しない限り、すべてのアプリは標準ユーザーとして実行されます

Administrators グループのメンバーであるユーザーは、標準のユーザー アクセス トークンを使用しているときに、サインイン、Web の参照、電子メールの読み取りを行うことができます。 管理者が管理者アクセス トークンを必要とするタスクを実行する必要がある場合、Windows はユーザーに承認を求めるメッセージを自動的に表示します。 このプロンプトは 昇格プロンプトと呼ばれ、その動作はポリシーまたはレジストリを使用して構成できます。

UAC ユーザー エクスペリエンス

UAC が有効になっている場合、標準ユーザーのユーザー エクスペリエンスは管理者ユーザーとは異なります。 Windows を実行するための推奨およびより安全な方法は、プライマリ ユーザー アカウントが標準ユーザーであることを確認することです。 標準ユーザーとして実行すると、マネージド環境のセキュリティを最大限に高めるのに役立ちます。 組み込みの UAC 昇格コンポーネントを使用すると、標準ユーザーはローカル管理者アカウントの有効な資格情報を入力することで、管理タスクを簡単に実行できます。

標準ユーザーの既定の組み込みの UAC 昇格コンポーネントは、 資格情報プロンプトです

標準ユーザーとして実行する代わりに、管理承認モードで管理者として実行します。 組み込みの UAC 昇格コンポーネントを使用すると、ローカル Administrators グループのメンバーは、承認を提供することで管理タスクを簡単に実行できます。

管理承認モードの管理者アカウントの既定の組み込みの UAC 昇格コンポーネントは、同意プロンプトと呼ばれます。

資格情報プロンプト

標準ユーザーがユーザーの管理アクセス トークンを必要とするタスクを実行しようとすると、資格情報プロンプトが表示されます。 管理者は、[ユーザー アカウント制御: 昇格プロンプトの動作] の [承認モード] ポリシー設定の値を [資格情報の入力を求める] に設定管理、資格情報の入力を求めることもできます。

UAC 資格情報プロンプトを示すスクリーンショット。

同意プロンプトは、ユーザーがユーザーの管理アクセス トークンを必要とするタスクを実行しようとしたときに表示されます。

UAC 同意プロンプトを示すスクリーンショット。

UAC 昇格プロンプト

UAC 昇格プロンプトはアプリ固有に色分けされ、アプリケーションの潜在的なセキュリティ リスクをより簡単に識別できます。 アプリが管理者のフル アクセス トークンを使用して実行しようとすると、Windows はまず実行可能ファイルを分析して発行元を特定します。 アプリは、最初にファイルの発行元に基づいて 3 つのカテゴリに分けられます。

  • Windows
  • 発行元の検証済み (署名済み)
  • Publisher not verified (unsigned)

昇格プロンプトの色分けは次のとおりです。

  • 灰色の背景: アプリケーションは、コントロール パネル項目などの Windows 管理アプリ、または署名された実行可能ファイルを含む UAC 資格情報プロンプトを示す検証済み発行元のスクリーンショットによって署名されたアプリケーションです。
  • 黄色の背景: アプリケーションは署名されていないか署名されていますが、信頼されていない UAC 同意プロンプトと署名されていない実行可能ファイルを示すスクリーンショット。

盾アイコン

日付と時刻などの一部のコントロール パネル項目には、管理者と標準のユーザー操作の組み合わせが含まれています。 Standardユーザーはクロックを表示してタイム ゾーンを変更できますが、ローカル システム時刻を変更するには完全な管理者アクセス トークンが必要です。 [日付と時刻] コントロール パネル項目のスクリーンショットを次に示します。

日付と時刻のプロパティの UAC シールド アイコンを示すスクリーンショット。

[ 日付と時刻の変更]ボタン のシールド アイコンは、プロセスに完全な管理者アクセス トークンが必要であることを示します。

昇格プロンプトのセキュリティ保護

昇格プロセスは、セキュリティで 保護されたデスクトップにプロンプトを送信することでさらにセキュリティで保護されます。 同意と資格情報のプロンプトは、既定でセキュリティで保護されたデスクトップに表示されます。 セキュリティで保護されたデスクトップにアクセスできるのは Windows プロセスだけです。 より高いレベルのセキュリティを確保するには、昇格ポリシー設定を有効 にするように求めるメッセージが表示されたら、[ユーザー アカウント制御: セキュリティで保護されたデスクトップに切り替える ] を維持することをお勧めします。

実行可能ファイルが昇格を要求すると、 対話型デスクトップ ( ユーザー デスクトップとも呼ばれます) がセキュリティで保護されたデスクトップに切り替わります。 セキュリティで保護されたデスクトップは、ユーザー デスクトップを暗くし、続行する前に応答する必要がある昇格プロンプトを表示します。 ユーザーが [はい ] または [いいえ] を選択すると、デスクトップはユーザー デスクトップに戻ります。

Windows Server 2019 以降、クリップボードのコンテンツをセキュリティで保護されたデスクトップに貼り付けすることはできません。 この動作は、現在サポートされている Windows クライアント OS のバージョンと同じです。

マルウェアは、セキュリティで保護されたデスクトップの模倣を提示できますが、[ユーザー アカウント制御: 管理 承認モードの管理者に対する昇格プロンプトの動作] ポリシー設定が [同意求めるプロンプト] に設定されている場合、ユーザーが模倣で [はい] を選択した場合、マルウェアは昇格されません。 ポリシー設定が [資格情報のプロンプト] に設定されている場合、資格情報プロンプトを模倣するマルウェアがユーザーから資格情報を収集できる可能性があります。 ただし、マルウェアは昇格された特権を取得せず、システムには、収集されたパスワードを使用してユーザー インターフェイスを制御するマルウェアを軽減する他の保護があります。

マルウェアがセキュリティで保護されたデスクトップの模倣を提示する可能性があるが、ユーザーが以前に PC にマルウェアをインストールしていない限り、この問題は発生しません。 UAC が有効になっている場合、管理者アクセス トークンを必要とするプロセスはサイレント インストールできないため、ユーザーは [ はい ] を選択するか、管理者の資格情報を指定して明示的に同意する必要があります。 UAC 昇格プロンプトの特定の動作は、セキュリティ ポリシーによって異なります。