米Microsoftの研究組織「Microsoft Research」は,姿を隠して潜んでいるソフトウエア――rootkit,トロイの木馬,キーロガーなど――なら何でも検出できる「GhostBuster」を開発した。これは実に簡潔で優れたアイデアだ。「rootkitなどはマシン上に存在するために,ハード・ディスクに自身のコードを書き込む必要がある。だが,その存在を隠すために,そのOS上で動作するほかのプログラムに“嘘”をつく必要がある」――。GhostBusterは,こうしたrootkitの特性をうまく利用している。

 GhostBusterの仕組みを説明しよう。ユーザーはCD-ROMからGhostBusterを使う。CD-ROMをドライブに挿入すると,(rootkitなどに感染している可能性がある)OS上で検査プログラム(GhostBuster)が動き出す。このプログラムは,ほかのユーザー・プログラムをすべて止め,キャッシュをクリアする。さらに,ハード・ディスク上の全ファイルのチェックサムを計算する。加えて,システムを自動的にスタートさせるようなレジストリ・キーを検索する。そして,これらの検査結果をハード・ディスク上のファイルに書き込む。

 その後ユーザーが指示に従ってリセット・ボタンを押すと,CD-ROM上のOSがブートし,再び検査を実行する。rootkitなどが隠れていると,1回目と2回目の検査結果に何らかの違いが出る。この検査方法なら,どんなrootkitが出回っているのかといった情報や,インストールしているプログラムの正しいチェックサムを知る必要はない。

 簡潔で非常に優れた方法だ。

 rootkitがGhostBusterを欺くには,次のいずれかを実施する必要がある。(1)GhostBusterのような検査プログラムが動作していることを検出し,このときだけは“嘘”をつかない(存在を隠すような動作をしない)あるいはハード・ディスクに書き込まれる検査結果を操作する(これにより,rootkitは動作を止める必要が生ずる),(2)rootkitをOSではなくBIOSに仕込む(技術的に難しく,プラットフォームにも依存してしまう。また,どのプラットフォームでも可能なわけではない)。(3)ハード・ディスク上に存在すること,あるいは自分の存在を隠すことをあきらめる。以上のように,GhostBusterはrootkitを完全に除去するわけではないが,rootkitの常駐を阻止して破壊的な打撃を与える。

 もちろんこの検査方法は,どのようなOSにも適用可能だ

 非常に優れた発想だが,大きな問題もある。GhostBusterは研究用の試作プログラムなので,ユーザーは入手できないのだ。さらに悪いことに,Microsoft社には商品として販売する計画もない。

 アイデアとして優れているので,あきらめるのは惜しい。Microsoft社の担当者へ。もしこの記事を読んでいるのなら,このツールを全世界でリリースするべきです。パブリック・ドメインにしてください。せめてオープンソースとして公開してください。非常に素晴らしいアイデアです。このアイデアを思いついたことは称賛に値します。

 セキュリティ・ベンダーの方はこの記事を読んでいますか?同様のツールを作って販売してください。「何かよいオープンソース・プロジェクトはないか」と探している人はいませんか?ここに1つありますよ。

 注記:私は,Microsoft社がこの技術で特許を取得したかどうか知らない。仮に特許を取って技術を提供しないとしたら,恥ずべき行為だ。特許を取得していないのなら,素晴らしいことだ。

技術レポート:
http://research.microsoft.com/research/pubs/...

Copyright (c) 2005 by Bruce Schneier.


◆オリジナル記事「GhostBuster」
「CRYPTO-GRAM March 15, 2005」
「CRYPTO-GRAM March 15, 2005」日本語訳ページ
「CRYPTO-GRAM」日本語訳のバックナンバー・ページ
◆この記事は,Bruce Schneier氏の許可を得て,同氏が執筆および発行するフリーのニュース・レター「CRYPTO-GRAM」の記事を抜粋して日本語化したものです。
◆オリジナルの記事は,「Crypto-Gram Back Issues」でお読みいただけます。CRYPTO-GRAMの購読は「Crypto-Gram Newsletter」のページから申し込めます。
◆日本語訳のバックナンバーは「Crypto-Gram日本語訳」のページからお読みいただけます。
◆Bruce Schneier氏は米Counterpane Internet Securityの創業者およびCTO(最高技術責任者)です。Counterpane Internet Securityはセキュリティ監視の専業ベンダーであり,国内ではインテックと提携し,監視サービス「EINS/MSS+」を提供しています。