デバイスがコンピュータに接続されたときに脆弱なWindowsアプリケーションによってデバイスが乗っ取られる攻撃を防ぐ方法が発見されました。
セキュリティ研究者たちは、Windowsにデバイスを差し込むだけで一般ユーザーがWindowsの最高のユーザー権限レベルであるSYSTEM権限を素早く獲得できるベンダーのアプリケーションもインストールされる可能性があると指摘しました。
例えば、ユーザーが人気USBマウスのRazerを接続すると、Windowsは自動的にそのドライバーとRazer Synapseソフトウェアをインストールしますが、WindowsのSYSTEM権限を持つプロセスを使ってソフトウェアのインストールを開始するため、Razer SynapseソフトウェアもSYSTEM権限で実行してしまうという脆弱性が発見されていました。
マウスを接続するだけでWindows 10の管理者になれるRazer社の脆弱性が発見される:SYSTEM権限が得られる脆弱性
SYSTEM権限とは、Windowsで利用できる最高のユーザー権限であり、OSのあらゆるコマンドを実行することができる最強のアカウントです。
このバグを利用すると、Windowsデバイスの権限がほとんどないユーザーでも、2000円=20ドルのUSBマウスを差し込むだけで、簡単にデバイスを完全に制御することができてしまう強力な攻撃手段でした。
ハードウェア開発者は、Windowsで配布するためのドライバーをMicrosoftに提出する際、Windowsのプラグアンドプレイがドライバーをインストールした後に実行される、デバイス固有のco-installerを設定することができます。
これらのco-installerは、デバイス固有のレジストリキーの設定、他のアプリケーションのダウンロードとインストールなど、デバイスが正常に動作するために必要な機能を実行するために使用することができます。

co-installerは、ユーザーモードのWin32 DLLで、通常レジストリに追加の設定情報を書き込んだり、INFの書き込み時には利用できない情報を必要とするその他のインストールタスクを実行します。
Razer社やSynapse社をはじめとするハードウェアメーカーは、co-installer機能を利用することで、USBデバイスをコンピューターに接続した際、自社の設定ユーティリティーをインストールすることができます。
CERT/CCの脆弱性アナリストであるWill Dormann氏は、Windowsレジストリの値を設定することでプラグアンドプレイ機能中にco-installerがインストールされるのをブロックすることが可能であることを発見しました。
Razerのデバイスを接続すると、権限のある任意のインストーラーが自動的に実行されないか心配していませんか?
恐れることはありません。
co-installerがインストールされるのをブロックする方法
レジストリエディタを起動し、レジストリキーHKEY_LOCAL_MACHINE_SOFTWARE_Microsoft_Windows_CurrentVersion_Device Installerを選択してください。このレジストリキーの下に、DisableCoInstallersという名前のDWORD-32値を追加して1に設定します
[HKEY_LOCAL_MACHINE\SOFTWARE\MicrosoftWindows\CurrentVersion\Device Installer].
“DisableCoInstallers”=dword:00000001
この設定を有効にすると、関連するUSBデバイスをコンピュータに接続したときに、Windowsによって共同インストーラがインストールされないようになります。
この変更を行うと、デバイスの設定ソフトウェアが自動的にインストールされなくなりますので注意してください。代わりに、ベンダーのサイトから手動でソフトウェアをダウンロードしてインストールする必要があります。
Comments