Windows 7では、UACは追加の設定を取得しました。 そして、UACをOSを保護するための本当に便利なツールにする方法を正確に説明したいと思います。
Windowsの脆弱性
そのため、ほとんどのWindowsユーザーは管理者アカウントで作業し、その後の結果はすべて発生します。 管理者の権利は事実上無制限なので、ウイルス作成者はこれを積極的に使用してコードを配布します。
ウイルス攻撃の最も重要な標的はいくつかあります。
- ファイルシステム(通常:実行可能ファイルの感染)
- Windowsサービス
- レジストリ
そして、ここで疑問が生じます。管理者の下で作業している場合でも、ユーザーをシステムから分離する方法です。 これらの目的で、UACとして機能します。
UACが有効になっている場合、システムファイル、サービス、またはレジストリへのアクセスの試みはすべてブロックされ、その後のアクションのためにユーザーの確認を要求するウィンドウが表示されます。
UACセットアップ
Windows 7では、UACのアラートレベルを構成する機能が導入されました。 UACセットアップ画面は次のとおりです。
図 1. Windows 7でUACを構成します。
合計4つのレベルのUACアラートが利用可能です。
- 最高レベル -システム設定とファイルを変更しようとする試みに対する警告、およびソフトウェアのインストール時の警告
- 2番目のレベル -システム構成およびユーザー設定を変更しようとした場合のみ警告
- 3番目のレベル -システム構成に変更を加えようとした場合のみの警告
- 4番目のレベルは、UACの完全な無効化です。
しかし、私の考えでは、セキュリティポリシーに追加のUAC設定があることがはるかに重要です(図2)。
図 2.セキュリティポリシーのUAC設定。
UACポリシーのいくつかを詳しく見てみましょう。
- 管理者に対する昇格時のプロンプトの動作 -管理者権限を増やすときの検証ウィンドウの動作を設定できます。 たとえば、パスワードを使用した権利の確認を有効にしたり(資格情報の入力を求める)、[OK]をクリックするだけで権利の確認を残す(同意を求める)ことができます。
- ユーザーに対する昇格時のプロンプトの動作 -最初のアイテムと似ていますが、ユーザーモードアカウント用です。
- 昇格のプロンプトが表示されたら安全なデスクトップに切り替えます-検証中にデスクトップをセーフモードに切り替えます。 ユーザーにとって、このポリシーを含めることは、テスト中のデスクトップのシェーディングの形で反映されます。 実際には、UACウィンドウのプログラムによるインターセプトを防ぐために、検証手順を他の実行中のプログラムから隔離する際のこのポリシーの役割。
- ユーザーごとの場所へのファイルとレジストリの書き込みエラーを仮想化します -ファイルとレジストリの仮想化。 仮想化モードでプログラムを操作して、ファイルシステムとレジストリ(サンドボックスモード)の損傷を排除できます。
UACの構成に関する推奨事項:
個人的には、検証中にパスワードを入力する必要を含め、最高のUACセキュリティ設定を使用しています。 これにより、システムファイル、レジストリ、およびWindowsサービスが完全に保護されます。 通常、ソフトウェアはシステムファイルと読み取り専用レジストリを使用します。 ここでの例外は、システムへのアクセス権の確認が正当化されるシステムユーティリティによってのみ表すことができます。 パスワードの使用は、アカウントの下で作業するだけでなく、[はい]ボタンをクリックするだけでは十分なセキュリティ条件ではない場合があるためです。
古いプログラムの問題
原則として、UACが有効になっている場合の古いプログラムの動作の問題は、システムとの誤ったやり取り、およびセキュリティ標準を順守し、システムリソースへのユーザーアクセスを制限する開発者の完全な不本意に関連しています。 通常、問題は管理者としてプログラムを実行することで解決できますが、このプログラムの脆弱性が使用されるとシステムに完全にアクセスできるため、ネットワークアプリケーションの場合は特に危険です。
例として、ユーザープロファイルをユーザーモードフォルダーに保存しない古いプログラムを使用できますが、プログラムファイルに作成されたすべてのファイルとディレクトリは書き込みと変更のアクセスレベルのみを継承するため、プログラムファイルでは、正しい操作ができるのは管理者のみです管理者向け。 問題を解決する最も簡単な方法は、一般ユーザーのプロファイルデータを変更する権限を追加することです。
一般に、アクセス権の問題を回避するために、ProgramFilesに古いプログラムをインストールしないことをお勧めします。
追加の保護
UACの目的はシステムデータを保護することですが、UACを使用してユーザーファイルを保護することもできます。 これは、ユーザーアカウントのファイルアクセス許可を単純にトリミングすることで実行されます。変更および書き込みの権限を削除するだけで、管理者のみに許可されたままになります。
ファイルのアクセス許可は、以前のバージョンのWindowsで構成できますが、管理者アカウントで動作するため、どのプログラムでもユーザーに確認することなくアクセスレベルを変更できます。 UACが有効になっている場合、権限の拡張は検証の通過によってのみ可能です。
UAC保護機能の検証
既に述べたように、UACの目的は、システムファイルと設定の変更からユーザーを保護することです。 したがって、ここでシステムのセキュリティをチェックする最善の方法は、UACを有効にしてウイルスの動作を調べることです。
UACがオンの場合のウイルスの機能の例を示します。
例として、Win32.Injectorトロイの木馬を取り上げます。 このトロイの木馬は非常に単純に動作します。C:\ Windows \ System32ディレクトリに自分自身を書き込み、レジストリにダウンロードを登録します。 その結果、コンピューターの再起動後、多数のcmd.exeとservices.exeが起動されます。 配布する最も簡単な方法は、フラッシュドライブの自動実行から実行することです。
UACを有効にしてこのトロイの木馬を実行してみましょう。 この実行可能ファイルnsshell.exeがあり、これもデフォルトで非表示になっています。
図 4.トロイの木馬プログラムnsshell.exe。
これが本当にウイルスであることを確認するには、ウイルス対策を使用してnsshell.exeを確認します。
図 5.アンチウイルスは、nsshell.exeがトロイの木馬であることを示します。
この実行可能ファイルを実行しようとすると、トロイの木馬はシステムディレクトリとレジストリに自身を登録しようとするため、UACメカニズムをトリガーします。
図 6. nsshell.exeの実行時にトリガーされるUAC
ご覧のとおり、この場合、UACウィンドウのヘッダーは黄色に変わりました。 よく見ると、このプログラムには信頼できる発行元と信頼性証明書も欠けていることがわかります。 したがって、特にフラッシュドライブのマウント時にこれが発生した場合、起動を確認する勇気はほとんどありません。
おわりに
したがって、UACの使用は、オペレーティングシステムのセキュリティの観点から真に正当化されます。 アプリケーションプログラムが起動時に管理者のレベルまで特権を昇格する必要がある場合、特に発行元とデジタル署名に関する情報がない場合、これはやや面倒です。 UACメカニズムについて詳しく理解し、それでも有効のままにしておくことをお勧めします。
PS:説明されている設定とアクションのほとんどは、Windows Vistaに当てはまります。