「VistaのUACはソーシャルエンジニアリングに弱い」の指摘

セキュリティ研究者が指摘した通り、Windows VistaのUAC(ユーザーアクセス制御)はソーシャルエンジニアリングを免れないとMicrosoftは認めた。

» 2007年02月28日 13時46分 公開
[Lisa Vaas,eWEEK]
eWEEK

 MicrosoftのVistaのUAC(ユーザーアクセス制御)は、日常的なコンピュータ利用の際のユーザー権限を制限することでWindowsのセキュリティを守ることに、同社がようやく真剣になったことを示すためのものだった。

 しかしこれは、一部セキュリティ専門家にとっては、セキュリティや信頼どころではない何かを表すようになっている。セキュリティ専門家ジョアンナ・ラトコウスカ氏は自身のブログでUACの分析を開始した。またUACに対する最新の攻撃として、Symantecの研究者オリー・ホワイトハウス氏は2月20日に「VistaのUACプロンプトが常に信頼できるとは限らない理由を示す一例」と題したエントリを投稿した。

 要するに、Microsoftは、確かにUACはソーシャルエンジニアリングを免れないと認めたということだ。

 UACの基本となるアイデアは、ほとんどのデスクトップ操作に関してユーザー権限をできるだけ制限するというものだ。

 ユーザー権限は管理タスクに必要な場合にのみ昇格される。このときダイアログボックスプロンプトが表示され、ユーザーに昇格を承認するよう促す。攻撃者にさらされるOSの面が少なくなることを考えると、通常の許可を制限するのはいいことだ。

 ホワイトハウス氏によると、問題は、UACのプロンプトに与えられた信頼のレベルだ――その信頼レベルにふさわしくないと同氏は考えている。

 問題なのは、UACが表示するダイアログボックスの種類と色だ。ダイアログボックスの色は、アプリケーションが遮断されたときの赤から、おそらくVistaの一部であるアプリケーションに使われる緑がかった青、サードパーティーのアプリケーションに使われる明るい灰色、署名のないサードパーティーのコードに使われる、ホワイトハウス氏が言うところの「ちょっと怖い黄色っぽいオレンジ」にまでわたる。

 実際、Microsoftの色遣いについての説明は、アプリケーションの推定される信頼度が低下するに従って、色が強くなるとしている。

 だがホワイトハウス氏は、緑ががった青を使って不正な目的を偽装し、個人が無作為に作った任意のファイルをVistaの正規の一部に見えるようにできることを発見した。

 「わたしが発見した問題は、RunLegacyCPLElevated.exeが悪用される可能性があるということだ。これはMicrosoftの署名付きで、デフォルトでVistaとともに出荷されており、昇格権限で実行する必要があること、コアOSの一部と考えられていることが明示されている」と同氏は自身のブログで述べている。

 同氏によるとRunLegacyCPLElevated.exeは、レガシーのWindowsコントロールパネルプラグインをフル管理者権限で実行できるようにすることで、後方互換性を提供するよう設計されている。

 問題は、任意のCPLファイルを、管理者以外が書き込めるディスク領域に書き込めるという点にある。例えばマシンがトロイの木馬に感染した場合、そのコードは制限されたユーザーとして実行されるが、不正なCPLをパラメータとして使ってRunLegacyCPLElevated.exeを呼び出すことはできる。

 要はUACプロンプトが嘘をつき、署名のないサードパーティーアプリケーションではなくWindowsが権限昇格を必要としていると主張するのだ。ダイアログボックスの一見「安全」な色と、プロンプトを誤ってWindowsプロンプトと思ってしまうことから、ユーザーはOKをクリックし、不正なコードが管理者権限を取得してしまう。

 この例は、「UACは(権限昇格前に)ユーザーにプロンプトを出すという目的にはかなっているが、アプリケーションを実行し続けるかどうかを判断するためにユーザーが頼る情報が、このベクトルによって台無しにされる可能性がある」ことを示すためのものだとホワイトハウス氏はeWEEKの取材に応えて語った。

 権限昇格の際に、昇格を要求するサードパーティーアプリケーションのステータスを正確に反映するUACダイアログボックスがもう1つ表示されないのだろうか?

 表示されないとホワイト氏は言う。「ユーザーがUACのダイアログボックスを一度受け入れたら、ほかのプロンプトは出てこない」

 Microsoftの広報担当者はeWEEKに対し、ユーザーが高度なセキュリティモードを設定しなければ、UACは実際にこの種のソーシャルエンジニアリングに弱いと語った。

 「ユーザーが高度なセキュリティモードを設定していなければ、あらゆるソーシャルエンジニアリング手法と同様に、攻撃者がUACプロンプトをだましてMicrosoftのコードのように見せ掛けることは可能だ」とこの担当者は語る。

 この担当者は、ユーザーは、証明書のプロンプトの前に、Control+Alt+Deleteを押さなくてはならないセキュリティオプションを使って、マシンをより安全なモードにすることで偽造UACプロンプトの可能性を「大幅に抑えられる」と説明する。

 「MicrosoftのUACの目標は、顧客が標準ユーザーとして実行できるようにすることだ。UACプロンプトは、顧客が十分な情報を基に決定を下せるよう、OSに加えられるかもしれない変更についての情報を提示するが、100%安全なソフトはないため、常に攻撃の可能性は存在する。だからWindows Vistaは縦深防御技術を備えているのだ」とこの担当者は言う。

 こうした攻撃の根本にあるのは、いずれユーザーはWindowsとインターネットからダウンロードされるファイルを区別できるようになると人々が思いたがっている点だとホワイトハウス氏はeWEEKに語った。

 とは言え短期的には、ユーザーは偽造された色別警告システムに惑わされやすいだろう。

 「Microsoftが受け入れようと受け入れまいと、ユーザーは色に基づいてある程度の信頼を持つ」(ホワイトハウス氏)

 この問題で取り上げられるべきは、UACがセキュリティの境界線ではないという点だと同氏は言う。

 「UACは、PCと信頼できないインターネットの間のセキュリティ境界線であるファイアウォールとは違う。UACは境界線というよりはセキュリティ機能のようだ。ユーザーを支援するツールとしては有用だが、鉄壁だと考えるべきではない」

 Microsoftはこの問題について問い合わせてきた人々に、コンシューマーのためのセキュリティのベストプラクティスを記した15ページの文書を紹介してきた。

 この文書は多数の設定変更を推奨している。ホワイトハウス氏は、これはお笑いぐさだと言う。「これがベストプラクティスなら、どうしてこの設定をデフォルトにしないのか? ユーザビリティのせいではないかとわたしは考えている。実際に疑問なのは、UACがアカウント制御を提供することになっているのに、たくさんの小規模なWebサイトがある広い世界で、彼らはこれらの変更を実装するだろうかということだ」

Editorial items that were originally published in the U.S. Edition of “eWEEK” are the copyrighted property of Ziff Davis Enterprise Inc. Copyright (c) 2011. All Rights Reserved.

注目のテーマ