スパイウエアは,大きく5種類に分類できる。(1)パソコン内部の保存情報を狙うスパイウエア,(2)パソコンが入出力する情報を盗み出すキー・ロガーやスニファ,キャプチャ,(3)悪意を持った第三者からの遠隔操作に従って内部情報や入出力データを盗むリモート・コントロール,(4)ブラウザのアクセス履歴などを収集して広告を表示するアドウエア,(5)アクセス履歴を収集するためにWebサイトから送られてくるトラッキングCookie--である。これらは,情報を盗み出す手口や狙う情報,その実体までさまざまな違いがある。Part2では,個々のスパイウエアについて,その手口の詳細を一つずつ見ていこう。

 part1で「ユーザーの意図に反して個人情報を送信するソフト」と定義したスパイウエアは,大きく5種類に分類できる。それは,1.パソコン内部の保存情報を狙うスパイウエア,2.パソコンが入出力する情報を盗み出すキー・ロガーやスニファ,キャプチャ,3.悪意を持った第三者からの遠隔操作に従って内部情報や入出力データを盗むリモート・コントロール,4.ブラウザのアクセス履歴などを収集して広告を表示するアドウエア,5.アクセス履歴を収集するためにWebサイトから送られてくるトラッキングCookie(クッキー)――である。

 これらのスパイウエアは,情報を盗み出す手口や狙う情報,果てはその実体までさまざまな違いがある。そこで,個々のスパイウエアについて,その手口の詳細を一つずつ見ていく。まずは,保存情報を狙うスパイウエアからだ。

決まった情報なら簡単に盗める

 保存情報を狙う種類のスパイウエアは,あらかじめプログラムされた通りにパソコンの内部の情報にアクセスして情報を集め,あらかじめ指定されたアドレスに送るソフトだ。実行ファイルやActiveX(アクティブエックス)コントロールといった形でユーザーのパソコンに入り込む。

 保存情報を盗むスパイウエアは,状況に応じて臨機応変に情報を探すのは得意でない。かといって,パソコン内のすべてのファイルを盗むのは現実的ではない。そこで,決まった場所にある情報を盗み出すものが多い。

 このタイプのスパイウエアの多くは,システム設定やアプリケーション設定が保存されているWindowsのレジストリを狙う。レジストリには必ず,ホスト名とユーザー名が書き込まれている。また,メール・アドレスも決まった位置に書かれていることが多い。しかもアプリケーションはレジストリに簡単にアクセスできる。こうした情報を狙うのは難しくない。

情報はHTTPかメールで送信

 レジストリ情報を盗み出す「Trojan.Hachilem(トロジャン・ハチレム)」(Hachilem)を例に,実際の動きを見ていこう(図1)。

図1●保存情報を狙うスパイウエアの多くはレジストリの情報を盗み出す<br>アダルト・サイトに埋め込まれるTrojan.Hachilemの例。クリックすると実行されて,レジストリの決まったところにあるメール・アドレスの情報を送信する。
図1●保存情報を狙うスパイウエアの多くはレジストリの情報を盗み出す
アダルト・サイトに埋め込まれるTrojan.Hachilemの例。クリックすると実行されて,レジストリの決まったところにあるメール・アドレスの情報を送信する。
[画像のクリックで拡大表示]

 Hachilemは,特定のアダルト・サイト用に開発されたスパイウエアだ。「18歳以上」といったボタンをクリックするとユーザーのパソコンに実行ファイルとして送り込まれる。

 このファイルをユーザー側のパソコンで実行してしまうと,Hachilemが起動し,パソコンに登録してあるコンピュータ名とユーザー名,ユーザーのメール・アドレスを収集する。Hachilemが盗み出すのはレジストリの決まった位置にある情報だけ。例えば,代表的なメール・ソフト「Outlook Express」(アウトルック・エクスプレス)のメール・アドレスは,レジストリの中の「HKEY_CURRENT_USER\Software\Microsoft\Internet Account Manager\Accounts」という場所に必ずあるので,そこにアクセスしてデータを取得するわけだ

 同時に,Hachilemはレジストリの情報を書き換える。レジストリにはWindows起動時に実行させるソフトの情報も書き込まれている。ここに自分自身の実行ファイル名を書き込んで,Windowsを起動したときにいつも実行するようにしておく。

 Hachilemは,Webアクセス用のHTTPを使って,取得したメール・アドレスをアダルト・サイトに送信する。Hachilemに限らずスパイウエアの多くは,情報送信にHTTPかメール送信用のSMTPを使う。ルーターやファイアウォールでプロトコルを制限していても,HTTPやSMTPはほぼ間違いなく通るからだ。

 Hachilemから情報を受け取ったアダルト・サイト運営者は,個人情報を取得したことをちらつかせながら,振り込みを迫るメールを定期的に送信する。

 Hachilemが盗む情報は,メール・アドレス止まり。住所や電話番号など,実際に盗み出していない情報を「入手した」と偽って脅すこともあるが,その言葉を信用する必要はない。

ファイルを探し出して情報を盗む

 パソコンに保存してある情報を送信するスパイウエアの中には,プログラムの中にあらかじめ書き込まれたアルゴリズムに基づいて,ファイルを探し出すものもある。例えば,「TROJ_HIROFU.A(トロジ・ヒロフ)」は,ユーザーによって違う場所にあるメール・ソフトのアドレス帳ファイルまで盗み出す。

 実は,アドレス帳ファイルの保存場所とファイル名は,メール・ソフトごとにレジストリの決まった場所に書き込まれている。TROJ_HIROFU.Aは,まずレジストリからOutlook Expressのアドレス帳の所在情報を取得する。そして,取得した所在情報に基づいてアドレス・ファイルを盗むわけだ。

 デスクトップの情報を持っていくスパイウエアも存在する。代表例は,P2P(ピーツーピー)によるファイル共有ネットワーク「Winny(ウィニー)」を介して広がったAntinny.G(アンチニージー)だ(図2)。

図2●Antinny.Gはパソコンのデスクトップ情報をP2Pネットワークにばらまくスパイウエア<br>パソコンが保存する情報を狙うスパイウエアには,レジストリ以外の情報を盗み出すものもある。Antinny.Gはデスクトップの画像とドキュメントを圧縮ファイルにまとめ,ユーザー名をファイル名に付けて送信する。
図2●Antinny.Gはパソコンのデスクトップ情報をP2Pネットワークにばらまくスパイウエア
パソコンが保存する情報を狙うスパイウエアには,レジストリ以外の情報を盗み出すものもある。Antinny.Gはデスクトップの画像とドキュメントを圧縮ファイルにまとめ,ユーザー名をファイル名に付けて送信する。
[画像のクリックで拡大表示]

 Anntiny.Gをユーザーが実行すると(図2の1),デスクトップの画面データとデスクトップ上に存在するWord(ワード),Excel(エクセル),PowerPoint(パワーポイント)のデータ,テキスト・データを取得。さらにOutlook Expressの送受信データも加えて一つの圧縮ファイルにまとめる(同2)。

 Antinny.Gは,どのパソコンにもあるデスクトップ・フォルダの中から拡張子によってファイルを選択する。Outlook Expressの送受信データはデスクトップ上にないが,こちらはレジストリの情報から所在を見つけ出すしくみになっているようだ。

 まとめた圧縮ファイルのファイル名には,誰のパソコンから盗んだかがわかるように,パソコンに登録されている組織名やユーザー名がつけられ,Winnyネットワークに公開される(同3)。企業や官庁の情報がWinnyネットワークに漏れた事件のほとんどは,Antinny.Gとその亜種による。

 今のところ保存情報を盗むスパイウエアのほとんどは,盗む情報の場所が決まっているか,簡単な探索機能しか備えていない。だからといって,レジストリやデスクトップ以外に保存してある情報が盗まれないとはいえない。プログラムに探索アルゴリズムを組み込めば,パソコンの中のファイルを検索するスパイウエアを作るのはさほど難しくない。例えば,「顧客情報という単語が含まれるデータ」を探し出すスパイウエアがどこかで登場しているかもしれない。