Web 2.0という言葉が流行し,様々な技術的概念がバージョンアップしたように思う。セキュリティも例外ではない。その代表格が,今年2月に報告された「Googleデスクトップ」のぜい弱性を悪用した攻撃。ブラウザと連携するアプリケーションを狙った攻撃手法である。

 Googleデスクトップは,ローカル・コンピュータ上のデータをインデックス化し,Google.comの検索範囲をローカル・コンピュータに拡張するツールである。ユーザーは,Web検索するのと同様にブラウザを利用してローカル・コンピュータ上のデータを検索できる。

 報告されたのは,このGoogleデスクトップに潜んでいたクロスサイト・スクリプティングのぜい弱性。簡単に言うと,第三者がWebコンテンツに悪意あるJavaScriptコードを埋め込めるという弱点である。

 Googleデスクトップの場合は,検索窓のあるページが悪用されてスクリプトを不正実行される危険があった。写真1は,画面にアラートを表示するスクリプトを実行させた様子である。

写真1●Googleデスクトップのぜい弱性を突いてスクリプトを実行させた様子
写真1●Googleデスクトップのぜい弱性を突いてスクリプトを実行させた様子

 この攻撃手法には敏感にならざるを得ない。新たな犯罪を生みだしかねない新種のワームやボットの登場を示唆しているからだ。攻撃者がぜい弱性を悪用すると,任意のスクリプトを埋め込み,ブラウザを乗っ取れる。Googleデスクトップの場合は,外部からパソコン内のデータを検索することが可能だった。

デスクトップWebアプリに盲点

 Googleデスクトップをインストールすると,ブラウザからの検索を可能にするために,ローカル・ホストでWebサーバー(ポート番号は4664)が起動する。test.docというファイルを検索する場合なら,ブラウザに検索文字列を入力するとブラウザはローカルWebサーバーに次のようなリクエストを出す。http://127.0.0.1:4664/search&q=test.doc

 ぜい弱性が潜んでいたのは,このリクエストに付加するunderパラメータという検索オプションだった。このオプションは特定のフォルダやドライブ内を検索するためのもので,リクエストの中で「under:"C:?Document and Settings"」というように検索先を指定する(図1)。

図1●Googleデスクトップのぜい弱性を突いた攻撃の例
図1●Googleデスクトップのぜい弱性を突いた攻撃の例

 本来なら,under以下は文字列として認識される。ところがパラメータにJavaScriptコードを挿入すると,ローカルWebサーバーが検索結果のページにスクリプトを埋め込んで返信。ブラウザでスクリプトが実行されてしまう状態になっていた。

 しかもGoogleデスクトップは以後の検索に際し,ブラウザの操作とは無関係に,underパラメータで指定された内容を記憶するようになっていた。スクリプトを検索文字列として入力された場合,次回以降の検索時にも,同じスクリプトが実行される。ブラウザを再起動してもスクリプトが引き継がれてしまうため,攻撃の成功率が高い。

パソコンそのものも乗っ取られる

 このぜい弱性を悪用することで,攻撃者はリモートからGoogleデスクトップ・ユーザーのブラウザを乗っ取ることができる。キー・ロガーやトロイの木馬のような動作をするスクリプトが有効であることは容易に想像できるだろう。

 公開されたGoogleデスクトップのぜい弱性問題の場合は,ブラウザ経由でローカル・コンピュータ内のデータにアクセスできる。さらに若干のスパイスを加えることで,ブラウザだけでなくコンピュータまで乗っ取られる危険性があった。

 例えばGoogleデスクトップのWebインタフェース経由で不正プログラムを実行させる。Googleデスクトップでは,「複数のコンピュータ上のデータ検索」(Search Across Computers)という設定をオンにすると,ネットワーク上の他のコンピュータにある共有フォルダも検索対象にできる。そのフォルダに実行形式ファイルがある場合,検索結果のリンクをクリックすればプログラムが起動する。

 この仕様を悪用すると,攻撃者は自身のコンピュータに作成した共有フォルダから不正プログラムを取得し,インストールできる。ボット・プログラムを自動的にダウンロードする「ドロッパー」のようなプログラムを埋め込む方法も考えられる。

同様の危険は至るところに潜む

 ブラウザと連携したアプリケーションは数多く,このぜい弱性と類似したケースはほかにも存在している。昨年報告された,FirefoxのRSSリーダー「Sage」のぜい弱性もその一つである。これらのぜい弱性を突かれると,ユーザーはいとも簡単にブラウザを乗っ取られてしまう。

 ブラウザは現在,企業内だけでなく家庭でもごく当たり前に利用されている。影響は,携帯電話のようにフルブラウザを搭載したモバイル機器にも及ぶ。我々の日常生活に大きな影響を与える事件に発展する危険性をもはらんでいる。

 最近はGoogle Docs&Spreasheetsのように,ドキュメント作成アプリケーションもブラウザ上で操作するようになってきた。そうなると攻撃者の対象は個人情報にとどまらない。企業の役員やIR関係者を標的としてインサイダー情報を手に入れ,これを使って大金を狙う犯罪が起こる危険性もあることを肝に銘じておきたい。

 ここで紹介したGoogleデスクトップのぜい弱性は,アプリケーションのバージョンアップにより解決可能だが,今後も類似したぜい弱性は多々発生すると考えられる。これらのぜい弱性を悪用した攻撃は,(1)気付きづらい,(2)境界セキュリティの概念が無効化されてしまう,(3)ウイルス対策ソフトでは対策が困難である,といった厄介な条件がそろっている。Web 2.0がさらに拡大し,今後もJavaScriptを核としたWebアプリケーションが増加してくることを考えると非常に頭が痛い。該当するアプリケーションを利用しないとか,パソコンに重要な情報を保存しないといった取り組みも一案かもしれないが,利便性を考えると実行しづらい。

 残念ながら,現在のところ最も確実なのは,信頼できるサイトを利用者が個別に登録するホワイトリストによる運用しかないのかもしれない。コンピュータとインターネットを連動させた技術の利用が進むにつれ,まだまだ危険が膨らんでいきそうだ。

 この記事は,2007年6月25日に公開した「セキュリティ・ウォッチ」を再掲載したものです。


岩井 博樹(いわい・ひろき)
ラック コンピュータセキュリティ研究所 所長
ラックのコンピュータセキュリティ研究所に勤務。IDS/IPS導入設計,コンサルティングなどに従事した後,同社のJapan Security Operation Center(JSOC)にて監視業務に携わる。現在は,セキュリティ技術の研究開発,フォレンジック業務を手掛ける。