Windows では、かなり前から自動実行にユーザー入力が必要でした。autorun.inf が挿入された USB では、ファイルに記述されている内容を実行するために、手動のユーザー入力が必要になります。
しかし、USB ドライバーはどうでしょうか? 悪意のある人がマルウェアのドライバーをインストールした場合、自動的に実行され、UAC 権限も付与されるのではないでしょうか? それとも、USB は独自のドライバーをインストールしないのでしょうか? 私はドライバーを扱ったことがないので、ドライバーについてはあまり知りません。
答え1
HID デバイスやストレージ デバイスなど、ほとんどのオペレーティング システムにドライバーがプリインストールされている、よく知られたクラスの USB デバイスがいくつかあります。
技術的には、このクラスのデバイスが検出されてもドライバーはロードされず、ドライバーはすでに存在しています。
Windows Vista または 7 以降、Windows は新しい USB デバイスを検出すると、Windows Update でドライバーを確認します。これらのドライバーは Microsoft から取得されるため、悪意のあるドライバーである可能性は低いです。Windows は、少なくとも Windows Update では「より優れた」デバイス ドライバーを検索しようとします。このため、Microsoft マウスを Windows システムの USB ポートに初めて接続すると、使用可能になるまでに長い時間がかかります。
Windows Update にドライバーがなく、互換性のあるドライバーがシステムに存在しない場合、デバイス ドライバーはインストールされず、デバイス マネージャーのデバイスの横に疑問符が表示されます。
USB デバイスは、実際には複数の「サブ」デバイスに分割できます。これらのうちの 1 つは、OS にとって CD-ROM のように見え、autorun.inf
インストーラーを起動するデバイスです。
インストーラーがシステム上で何かを実行するための自動許可を持つかどうかは、UAC とグループ ポリシーまたはローカル セキュリティ ポリシーの設定によって異なります。システムで無効になっていない限り、任意のタイプのインストーラーが実行されて昇格されたアクセス許可が要求されるときに、少なくとも UAC ポップアップが表示されるはずです。
ドライバーのインストールには管理者権限が必要であり、特定のドライバー ソフトウェアは Windows システム上でカーネル モードで動作します。つまり、システム上で何でも実行できます。したがって、悪意のあるコードが侵入する可能性のある経路となります。より安全なシステムでは、自動実行を可能な限り厳しく制限し、できれば無効にします。
ドライバーは、Windows と共に配布されるもの、新しいデバイスに付属のディスクで配布されインストール可能なもの、PC 製造元のサポート Web サイトから配布されるもの、Windows Update から入手できるものなど、さまざまなソースから入手できます。
また、デバイスで動作するドライバーの種類が複数ある場合もあります。通常、基本的な機能を有効にする汎用ドライバーと、すべての機能を有効にするより特殊なドライバーがあります。たとえば、Windows には、どのグラフィック カードでも動作する汎用 VGA ドライバーがありますが、そのドライバー (製造元から提供) をインストールすると、すべての機能が有効になります。一部の USB デバイスは、このようにして「ドライバーなし」で動作します。実際にはドライバーを使用しますが、Windows に含まれる汎用 USB クラス (「クラス」は、デバイス、キーボード、ディスク ドライブなどのタイプ) ドライバーが組み込まれています。
Windows は、常に OS に共通ドライバーをバンドルしてきました。また、サードパーティ企業がドライバーを開発し、インストールできるようにもしています。ドライバーは、Microsoft や Windows Update から入手する必要はありません。PC の新しいハードウェアが次々と登場し、Microsoft が Windows や Windows Update にドライバーを含めていない可能性があるため、Windows にデバイス用のドライバーがない場合は、製造元が提供するドライバーをインストールまたはダウンロードする必要があります。
新しいハードウェアの通常のプロセスは、製造元提供の CD を実行し、ドライバーをインストールしてから、ハードウェアをインストールするというものです (古い ISA カードなど、一部の古い PC では、各デバイスのジャンパーを構成する必要があります)。最近では、代わりにドライバーとサポート ソフトウェアを含む .msi ファイルをダウンロードする場合があります。
グラフィック カードや USB デバイスなどの一部のハードウェアでは、最初にデバイスを接続してからドライバーをインストールできますが、現在でもほとんどのプリンター インストール CD では、ソフトウェアとドライバーのインストールが完了するまで USB プリンターを接続するのを待つように指示されています。
Windows には、まだドライバが存在しない USB デバイスからドライバを公式に取得するメカニズムはありません。このようなことが起こる唯一の方法は、USB デバイスにオペレーティング システムにとって CD-ROM のように見えるサブデバイスがある場合です。この場合、CD が挿入されたかのように動作し、他のリムーバブル メディアと同様に AutoRUN が開始されます。CD-ROM は、Windows がサポートを組み込んでいる汎用デバイス クラスの 1 つであるため、USB サポートがあるすべての Windows システム (今世紀にリリースされたものはすべてサポートされています) で自動的に動作します。