ユーザーインターフェイス特権の分離

ユーザーインターフェイス特権の分離 (, UIPI) とはWindows Vista/Windows Server 2008で追加された技術で、（、壊滅的攻撃）を防ぐものである。これは必須整合性コントロールを使用することで、低い整合性レベル (IL) のプロセスから高い整合性レベル (IL) へのメッセージの送信を妨げる（ごく限られたUIメッセージのセットを除く）。ウィンドウメッセージは処理のアクションをユーザーに伝えるために設計されている。しかし、それらはプロセスのコンテキスト受信の中で任意のコードを実行させるためによく悪用される。この手法によって、悪意のある低ILプロセスは高ILプロセスのコンテキストで非正規の権限昇格で構成された任意のコードを実行させる。コード実行のいくつかのベクタやデータインジェクションへのアクセスを制限することで、UIPIはこれらの種類の攻撃を低減することができる。

UIPIセキュリティの回避 
UIPIおよび必須整合性コントロールは、より一般的にはセキュリティ境界ではなくセキュリティ機能である。UIアクセシビリティ・アプリケーションはマニフェストファイルのuiAccess値をTRUEにセットすることでUIPIを回避することができる。しかし、このフラグがWindows UIPIによって履行されるためには、アプリケーションがProgram FilesまたはWindowsディレクトリーにインストールされていて、かつ有効なコード署名機関によって署名されている必要がある。これらの場所へアプリケーションをインストールするには、高整合性レベルにプロセスを昇格して動作させるために管理者権限を持つユーザーを必要とする。 

つまり、マルウェアがUIPIを回避できる場所に侵入するためには以下の条件が必要になる。
 ベリサインや他の信頼済みコード署名機関によって発行された有効なコード署名証明書を使用する。
 管理者権限を持つユーザーに対して攻撃を実施する。
 ユーザーにUACプロンプトで管理者権限の使用を許可するよう促す。

脚注 

Windows NT系
アクセス制御
Windowsのセキュリティ技術