「Windows Autorun」更新プログラムでUSBワームへの対策を


 マイクロソフトは8月26日、セキュリティアドバイザリ「Windows Autorun(自動実行)用の更新プログラム」(967940)と、更新プログラム(修正パッチ)を公開した。

 Windows Autorunとは、CD-ROMやUSBメモリなどがPCに挿入された場合に、指定されたプログラムを自動的に実行する仕組みのことだ。市販のパッケージソフトウェアなどでは、CD-ROMを挿入しただけでインストーラーが起動する便利な仕組みだが、2008年秋に流行したウイルス「Conficker」や、2009年初旬に流行したウイルス「Downadup」などでは、USBメモリを媒介としてこの仕組みが悪用された。これらのウイルスは「USBワーム」とも呼ばれ、セキュリティベンダーや専門家などが、この自動実行の仕組み自体が問題だと指摘していた。

 次期OSの「Windows 7」では、Aurorunの仕組みはCD-ROM/DVDなどのメディアに限られ、USBメモリやネットワークデバイスなどでは自動実行機能が働かないように仕様が変更される。今回、セキュリティアドバイザリとともに公開された修正パッチは、従来のWindows Vista/XPおよびWindows Server 2003についても、Windows 7と同じ動作をさせるためのものだ。

 ただし、今回の修正パッチはWindowsの仕様を変更することになるため、Windows Updateなどの自動更新では提供されない。適用は手動で行う必要があるが、リテラシーの低いユーザーがUSB経由でウイルスを持ち込む可能性があるPC、たとえば家族や職場で共用するPCなどでは、適用することをお勧めしたい。

 なお、自動実行機能を利用するソフトウェア入りのUSBメモリでは、パッケージの説明書通りに動作しないなど、ユーザーの混乱を招く場合もあるので、その場合の対処についても合わせて確認しておこう。

Vistaでは、USBメモリ接続だけで実行される「自動実行」機能

 Autorunの仕組みとしては、Windowsはメディアを読める状態になると、まずそのメディアに「autorun.inf」というシステムファイルがあるかを探して、あった場合はそのファイルに書かれている内容を実行する。このファイルは一般的には、インストール用のプログラムを実行したり、あるいはドライブアイコンの画像を変更したりといった内容が書かれているが、攻撃ではこれがウイルスの実行に悪用されるというわけだ。

 なお、この「自動実行」が行われるメディアはOSによって違いがある。

 Windows Vistaでは、CD-ROMやDVDメディア、ネットワークドライブ、それにUSBメモリが自動実行の対象になっている。USBメモリをPCに接続したときに表示される自動再生ダイアログで、過去に「プログラムのインストール/実行」で「常に次の動作を行う」を選択していた場合には、USBメモリ内のプログラムが自動実行されてしまう可能性がある。

 Windows XPでは、CD-ROMやDVDメディアがドライブに挿入された場合と、ネットワークドライブが存在する場合に自動実行機能が働く。USBメモリについては自動実行ではなく、「Windowsが実行する動作を選んでください」という表示がされ、「フォルダを選んでファイルを表示する」「何もしない」などを選ぶことができるようになっている。ただし、マイコンピュータ内のドライブアイコンをダブルクリックした場合には、USBメモリでも自動実行機能が働いてしまう可能性がある。

 今回公開された修正パッチは、Windows Vista/XP環境などでのこうした危険な挙動を変更し、自動実行を一部制限することで、ウイルスなどの感染を抑えるものだ。

修正パッチは手動でダウンロードして適用する

 今回の修正パッチの詳しい内容については、以下のリンクに掲載されている。ただし、現時点では機械翻訳によるもののため、かなり読みづらい。

・マイクロソフトサポートオンライン 971029「Windowsで自動再生機能への更新します」
 http://support.microsoft.com/default.aspx/kb/971029

 修正パッチは、以下のダウンロードページからダウンロードできる。ダウンロードしたファイルは、実行して指示通りに「次へ」などをクリックしていけば、インストールは終了する。

・Windows XP用更新プログラム
 http://www.microsoft.com/downloads/details.aspx?displaylang=ja&FamilyID=96ca61f6-8b16-4157-9635-8cfc0bbf4c35
・Windows Vista用更新プログラム
 http://www.microsoft.com/downloads/details.aspx?displaylang=ja&FamilyID=dd6a61a3-b3c6-4b0a-a848-7b32be9f31c5
・Windows Vista(64bit)用更新プログラム
 http://www.microsoft.com/downloads/details.aspx?displaylang=ja&FamilyID=12e3fe0f-db79-4a27-aa7d-a456ee1c6ac4

更新プログラムは、ダウンロードページから個別に実行ファイルをダウンロードする必要がある指示通りクリックし、Windowsを再起動すれば自動実行の挙動変更は完了

 これで、Windowsを再起動するとUSBメモリの自動実行の挙動が変更され、USBメモリでの自動実行は行われなくなる。

 ただし、市販のソフトなどでは、USBメモリ内にソフトウェアを同梱して自動実行を行うようなものもある。こうした場合、USBメモリを挿入しただけではインストーラーが起動しなくなるので、マイコンピュータなどからドライブを開き、インストーラープログラム(一般的にはSetup.exeなど)を手動で起動する必要がある。ソフトの説明書などとは食い違う場合があるので、そうした状況が考えられる場合には、ユーザーへの注意喚起も必要だろう。

 なお、このパッチは、USBメモリ内のautorun.infの実行を止めるが、それはPCから見て論理的に「USBメモリ」となるものに限られる。USBメモリの中には、内部が論理的にCD-ROMとUSBメモリ部分に分かれていて、接続するとWindowsからは仮想的なCD-ROMドライブとして見えるものがある。USBメモリ内の仮想CD-ROMドライブ内のファイルを自動実行されることを期待してこのような作りになっているのだが、このタイプのUSBメモリの場合には、今回の修正パッチ適用後も、USBメモリをPCに接続した場合には内蔵のプログラムは自動実行されるので注意が必要だ。

 また、このセキュリティパッチは、あくまでもWindowsの自動実行機能の動作を変更するためのものだということを忘れないようにしたい。つまり、USBメモリ経由のウイルス感染を防ぐために一段階ハードルを設けるものであって、自動実行はされなくても、ユーザーが手動で実行してしまえばやはりウイルスには感染するからだ。

 出所の怪しいUSBメモリの内容を開いたりしない、ウイルス対策ソフトのインストールやパターンファイルのアップデートをこまめに行うなど、特に他人とUSBメモリを共用している場合には、注意を払いつつ利用することを忘れないようにしよう。


関連情報

(大和 哲)

2009/8/31 15:36