こんにちは、阿久津です。利便性の向上とセキュリティレベルの低下はトレードオフの関係にあり、その関係性を顕著に感じるのが、今年話題になったAutorun.infを用いるマルウェアです。本来Autorun.infはCD/DVD-ROMに収録されたファイルを自動実行するための定義ファイル。CD/DVDドライブにメディアを挿入すれば動作する、ほかのOSから影響を受け、Windows OSにも実装されました。

Windows XP Service Pack 2からは、USBメモリもサポートされるようになったため、便利になりましたが、マルウェアやウイルスが蔓延(まんえん)する温床になってしまったのも事実です(図01~03)。

図01: 画面のようなAutorun.infをUSBメモリ上に作成し……

図02: コンピュータに接続しますと、Autorun.infが読み込まれ、自動再生にアクションが並びます

図03: アクションを実行しますと、あらかじめ指定しておいた実行ファイルが起動します

リムーバブルメディアを無効にする[Shift]キーを押しながら挿入、というTipsを思い出される方もおられるでしょう。しかし、[Shift]キーを押しながらUSBメモリを接続しますと、USBメモリに割り当てられるドライブアイコンは変更されませんが、自動再生機能は実行され、コンテキストメニューにもAutorun.infで指定したアクション名が並ぶことから、Autorun.infによる動作を完全に無効化することはできません(図04~05)。

図04: [Shift]キーを押しながら、USBメモリを接続しても、Autorun.infの内容は参照されます

図05: コンテキストメニューには、Autorun.infに記述したアクション名が並びます

そこで今回のテーマとなるのが、レジストリ上からAutorun.infの読み込みを禁止するというものです。まずは下記の手順をお試しください。

クイック検索やファイル名を指定して実行などから「regedit」を実行してレジストリエディタを起動し、HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ IniFileMappingまでキーをたどって開きます。IniFileMappingキーを選択した状態で、<編集>メニューから<新規>→<キー>と選択し、新しいキーの名前を「Autorun.inf」に変更してください(図06~07)。

図06: 「ファイル名を指定して実行」や「クイック検索」のテキストボックスに「regedit」と入力して[Enter]キーを押します

図07: HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ IniFileMappingまでキーをたどって開き、<編集>メニュー→<新規>→<キー>と選択して、Autorun.infキーを作成します

続いてAutorun.infキーを開き、右ペインにある「既定」をダブルクリックします。値のデータを「@SYS:DoesNotExist」に書き換えてから、<OK>ボタンをクリックしてください。変更内容をシステムに反映させるため[F5]キーを押し、レジストリエディタを終了すれば、チューニング完了です(図08~09)。

図08: 「既定」をダブルクリックで開き、値のデータを「@SYS:DoesNotExist」に書き換えてから<OK>ボタンをクリックします

図09: 設定を終えたら[F5]キーを押して変更内容をシステムに反映させてから、レジストリエディタを終了します

この状態でUSBメモリをコンピュータに接続しますと、自動再生は起動しますが、先ほどまでは異なる内容に変化します。これはAutorun.infを読み込まず、USBメモリ内のアイコンファイル(拡張子「.ico」)を画像ファイルとして認識しているからでしょう。また、USBメモリに割り当てられたドライブのコンテキストメニューにも、Autorun.infによるアクションは並んでいません。つまり、Autorun.infの読み込みが抑制されているのです(図10~11)。

図10: チューニング後にUSBメモリを接続しますと、自動再生は起動しますが、Autorun.infが読み込まれた形跡はありません

図11: 同じくUSBメモリに割り当てられたドライブのコンテキストメニューも、Autorun.infによるメニューは加わっておりません

USBメモリ経由のウイルス・マルウェア蔓延を回避するため、利便性を犠牲にできる方は、本チューニングをお試しください。ただし、一部のインストーラーでは、誤動作が生じることもあるそうです。その際は、Autorun.infキーのデータ値を一度クリアしてから、インストーラーを起動しましょう。なお、CD/DVD-ROMのAutorun.infを無効にするには、HKEY_LOCAL_MACHINE \ System \ CurrentControlSet \ Services \ CDRomキーにあるDWORD値「AutoRun」のデータ値を「0」にします。

それでは、また次号でお会いしましょう。

阿久津良和(Cactus)