IPAが2011年上半期の日本国内のマルウェア感染届出のレポート「2011年上半期[1月~6月]コンピュータウイルス届出状況」を公表しています。レポートには2010年7月から2011年6年のウイルス検出数と届出数の推移が載っているのですが、「autorun」は検出数が少ないにもかかわらず、届出数が多いことがわかります。
autorunは、USBメモリなどをPCに挿入した時に自動的に実行されるWindowsのオートプレイ機能(オートランとも呼ぶ)により感染するタイプのマルウェアの総称です。USBメモリの利便性ゆえに利用ユーザーへのインパクトが大きいことが、届け出数の多さから読み取れます。今回は、多くのビジネスシーンで利用されるオートプレイ機能について話をしましょう。
オートプレイの仕組み
オートプレイ(自動再生)の仕組みは、「autorun.inf」と呼ばれるファイルがポイントです。autorun.infファイルは、WindowsがUSBメモリやCD-ROMを読み込んだ際に行なわれる自動実行の内容を記述したものです。
図1 「autorun.inf」の記述方法
例として以下のようなautorun.infを作り、USBに格納してデフォルト設定のWindows Vistaに差し込んでみます。
図2 サンプルとして作成した「autorun.inf」
画面1 USBメモリに保存したファイル(notepad2.exeはメモ帳 notepad.exe をコピーしたもの)
オートプレイされると、デスクトップ上に画面1のような自動再生ダイアログが表示されます。
また、エクスプローラでUSBを右クリックすると、ショートカットメニューに追加されたエントリが表示されます(画面2)。
オートプレイによるマルウェア感染の手口
前述のautorun.infの例には、いくつかの典型的なオートプレイを利用したマルウェア感染手口が含まれています。
自動再生ダイアログで偽のフォルダに見せかけてプログラムを実行させる
先ほどの画面2をよく見ると「フォルダを開いてファイルを表示」のメニューが、2つあります。赤い枠線で囲んだ部分はautorun.infにより指定されたもので、その下の「全般のオプション」のほうがWindowsが出力したものです。
USBをエクスプローラで開いて中身を確認しようとして、うっかり赤い枠線で囲んだ部分を実行すると、autorun.infで指定されたファイルが実行されてしまいます(例ではUSBメモリに格納されたTestProgram.exeが実行されます)。この方法は、2009年1月から猛威を振るい、たった2週間で900万台ものコンピュータを感染させたConfickerワーム(別名「Downadup」)でも使われていた方法です。
規定のショートカットメニューを改ざんする
図2のautorun.infでは、最後の2行により、ショートカットにデフォルトで含まれている「開く」と「エクスプローラ」に対する改ざんを行ないます。
shell\explore\command=notepad2.exe ←ショートカット「エクスプローラ」 を偽装 shell\open\command=notepad2.exe ←ショートカット「開く」を偽装
ユーザーがエクスプローラでUSBメモリを右クリックし、ショートカットメニューから閲覧した際に、ここで指定されているプログラムを実行させて感染させようという手口で、オートプレイを利用したマルウェアで幅広く使われています。
オートプレイで感染するマルウェアへの対処法
前述の猛威を振るったConfickerワームを筆頭に、いまなお影響を及ぼしているオートプレイ型のマルウェアの特徴は以下のようなものがあります。
- オートプレイによる自動再生からユーザーに実行を促す
- autorun.infを利用してショートカットメニューからウイルスを実行させる
- クリーンなUSBメモリが感染したPCに挿されると、クリーンなUSBメモリにautorun.infと自分自身をコピーし、他のPCに拡散しようとする
これらの特徴を把握した上で、対策すべきポイントは以下になります。
- Windowsのオートプレイを無効にし、最新のサービスパックを適用する
- マイクロソフトのナレッジベース967715に従ってオートプレイは無効にしておくべきです
- マイコンピュータのアイコンからダブルクリックでUSBメモリを展開しない
- マイコンピュータからUSBメモリのアイコンをダブルクリックで開こうとすると、autorun.infで「開く」で指定したアプリケーションを実行することができます。このような感染を防ぐために、エクスプローラのフォルダツリーなどからUSBメモリの内容物を閲覧してください
- ウイルス対策ソフトを最新にし、リアルタイムスキャンは有効にする
- USBメモリマルウェアが含まれ実行される際には、必ずWindowsが実行ファイルにアクセスするので、ウイルス対策ソフトのリアルタイムスキャン機能により感染を防止することができます。必ずウイルス対策ソフトのリアルタイムスキャン機能を有効にしておきましょう。最新の手口に対応するためにも、ウイルス対策ソフト自体やウイルス定義ファイルを最新にしておくことを忘れてはいけません
- USBメモリは、PCから抜く前にセキュリティソフトでスキャンする
- オートプレイ型ウイルスは、クリーンな(感染していない)USBメモリを見つけると、そのUSBメモリに寄生することで他のPCへ感染を広げようとします。感染拡大を防ぐために、PCからUSBメモリを取り外す前に、最新の状態にされたウイルス対策ソフトを使ってUSBメモリをスキャンし、USBメモリがクリーンであることを確認した上でPCから抜きましょう。USBメモリにウイルスが見つかった場合には、ウイルス対策ソフトでウイルスを削除するか、フォーマットしてデータをコピーし直して利用することをお勧めします
筆者紹介:八木沼 与志勝(やぎぬま よしかつ)
エフセキュア株式会社 テクノロジー&サービス 部長
1972年生。UNIXプログラミングからIT業界に携わりはじめ、そのあとITインフラを中心としたITコンサルティングからセキュリティ業界へ。エフセキュア入社は2006年で、法人/コンシューマの製品およびプリセールスなどのサービス全般を担当する。
この連載の記事
-
最終回
TECH
セキュリティの根本はインシデントに備えた体制作りから -
第54回
TECH
マルウェア感染の被害を抑える「転ばぬ先の出口対策」 -
第53回
TECH
マルウェア感染を発見した際の初期対応 -
第52回
TECH
ついに成立したサイバー刑法に懸念点はないか -
第51回
TECH
施行されたサイバー刑法における「ウイルス作成罪」の内容 -
第50回
TECH
サイバー刑法が過去に抱えていた問題点 -
第49回
TECH
ウイルス作者を取り締まるサイバー刑法ができるまで -
第48回
TECH
医療ICTの今後の広がり -
第47回
TECH
重大な情報を扱う医療ICTのセキュリティ対策 -
第46回
TECH
医療ICTの柱「レセプト電算処理システム」の仕組みと問題 -
第45回
TECH
医療分野で普及が進む電子カルテシステムの課題 - この連載の一覧へ