Mozilla に UI をスプーフィングできる脆弱性

2004年7月30日(金) 21時34分 by level
B ?

またですかー。実証ページの上のほうの二つのリンクをクリックすると、完全に UI を乗っ取られたウィンドウが開きます(スクリーンショット)。危険度は中。オソロシー。

7/31更新

Bug 22183 がすでに存在したように、この問題は関係者の間では何年も前から知られていたようです。このバグは、今回の報道により非公開から公開に変更されました(通常、セキュリティバグは非公開となります。最近の一連のセキュリティ問題のように広く公開されてしまうと、最初から公開扱いとなります)。

今回の手口ですが、新規ウィンドウをメニューバー、ツールバーなどを非表示で開き、XUL を使って偽の UI メニューバーやツールバーを表示するものです。以下のスクリーンショットで示すとおり、使用しているテーマや言語パックを忠実に反映したものです。ただし、配置やアイコンのサイズまでは再現できないようです。よって、デフォルトと異なる配置やアイコンサイズを使用していると、気がつきます。

実証画面

また、左下の SSL の鍵マークや、証明書も偽ものを表示をする手の込みよう。もう、なんでもありなんですね(FirefoxModern テーマでは鍵マークは表示されませんでした)。

偽証明書

コメントで指摘のあったとおり、ツールバーを常に表示するように設定しておけば、ツールバーは二つ現れることになり、おかしいことが分ります。user.js に以下の設定を追加すれば OK です。

user_pref("dom.disable_window_open_feature.location", true);
user_pref("dom.disable_window_flip", true);
user_pref("dom.disable_window_move_resize", true);
user_pref("dom.disable_window_open_feature.menubar", true);
user_pref("dom.disable_window_open_feature.minimizable", true);
user_pref("dom.disable_window_open_feature.resizable", true);
user_pref("dom.disable_window_open_feature.scrollbars", true);
user_pref("dom.disable_window_open_feature.titlebar", true);
user_pref("dom.disable_window_open_feature.toolbar", true);
user_pref("dom.disable_window_open_feature.status", true);

コメント (10)

1 7/30 23:37 とおやま
(c1) [2004/07/30 23:37:44] by とおやま

実証ページですが、Mozilla Suiteでは動かないみたいです。
(XML パースエラー: 未定義の実体というメッセージが出るだけでした。)
ただし、Firefoxでは現象を確認しました。7/30現在のナイトリー、トランクでも問題は発生するみたいですが。

2 7/31 00:15 level
(c2) [2004/07/31 00:15:32] by level

テストを兼ねてメモ:
OperaやMozillaのセキュリティ・ホール(IT PRO)
http://itpro.nikkeibp.co.jp/free/ITPro/Security/20040728/147862/

3 7/31 13:52 ふぅ
(c3) [2004/07/31 13:52:06] by ふぅ

予防策のひとつとして、

http://pc5.2ch.net/test/read.cgi/software/1090992937/127
> user_pref("dom.disable_window_open_feature.location", true);
> を user.js に仕込んでおけば window.open で
> アドレスが隠されることはないから spoof に対して最低限の予防になる。
>
> user_pref("dom.disable_window_flip", true);
> user_pref("dom.disable_window_move_resize", true);
> user_pref("dom.disable_window_open_feature.menubar", true);
> user_pref("dom.disable_window_open_feature.minimizable", true);
> user_pref("dom.disable_window_open_feature.resizable", true);
> user_pref("dom.disable_window_open_feature.scrollbars", true);
> user_pref("dom.disable_window_open_feature.titlebar", true);
> user_pref("dom.disable_window_open_feature.toolbar", true);
> user_pref("dom.disable_window_open_feature.status", true);
> この辺もやっとくのが吉。

というものが紹介されていました。

4 8/03 20:59 とおやま
(c4) [2004/08/03 20:59:11] by とおやま

0.9.3ナイトリー版
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.7) Gecko/20040803 Firefox/0.9.3
で、実証ページを試してみましたが0.9.2以前と同様でした。
何が直ったのかな?

5 8/03 22:19 level
(c5) [2004/08/03 22:19:48] by level

http://bugzilla.mozilla.org/show_bug.cgi?id=22183
UI spoofing can cause user to mistake content for chrome
パッチは出ているもののまだレビューも行われていません。

http://bugzilla.mozilla.org/show_bug.cgi?id=252811
Do not allow hiding of statusbar by default
つい最近、ステータスバーはデフォルトで非表示禁止となったようです。URLバーもそうすべきと思いますが...

http://bugzilla.mozilla.org/show_bug.cgi?id=22183
Discoverability of content-blanking to detect UI spoofing
認証されていないUIを非表示にする機能というのも議論されているようです。

7 8/08 08:23 きつね男爵
(c7) [2004/08/08 08:23:40] by きつね男爵

はじめまして
通りすがりのものなんですが
失礼します。
firefox093日本語版をインストールしたのですが
スプーフィング問題がまだ解決されていないそうで
コメントに書かれているその”予防策”をしたいのですが
どこをどうさわればいいのかわからなくて困っています。
よろしければ 教えてください。
王手のショッピングサイト(HMVとかタワレコとかアマゾン等くらい)なら 大丈夫でしょうか?

firefoxは いったん消してインストールしなおしたのですが
サンダーバードも いったん 
削除してインストールしなおしたほうがいいのでしょうか?
削除した際 今までのメールや設定を残す方法があれば
よろしければ教えてください。
いきなり 訪問して質問ばかり残して行って申し訳ないです。

8 8/08 12:21 level
(c8) [2004/08/08 12:21:56] by level

user.jsに追加してください。
http://level.s69.xrea.com/mozilla/tips.html#user.js

いったんアンインストールしたほうが良いかもしれません。
メールや設定はプロファイルに保存されていて
本体をアンインストールしてもプロファイルは残っているので
大丈夫です。

9 8/08 16:14 きつね男爵
(c9) [2004/08/08 16:14:56] by きつね男爵

>levelさん
こんなに早く レスしてくださってありがとうございます。
user.jsが なかったので
ページに書いたあるとおりに 新しく作りました。
メモ帳に 上記の赤枠内をそのままコピーして ファイル名を
user.jsにしてフォルダに保存したのですが・・・
これで あってるのでしょうか・・?
再起動しても どのような感じなのかいまいち
よくわからなかったんですが・・・。

教えてくださったとおり サンダーバードの方も
アンインストールしてインストールしなおすことにします。
ファイアフォックスの時 モジラ自体のフォルダを手動で削除して
”firefox”で検索して出てきた3つの*.pfファイルまで
削除していたもので
(ブックマークも拡張も全て なくなって初期に戻ってました)
それから コントロールパネルで アンインストールしていたので
さすがに サンダーバードまで こんなことしていたら
メールとか設定が消えてしまうのは・・・と思っていたので
levelさんのアドバイス助かりました。

10 8/08 18:06 きつね男爵
(c10) [2004/08/08 18:06:28] by きつね男爵

>levelさん
何回も書き込み失礼します。
サンダーバードを削除しようとしたのですが
前の時に071の上から072をインストールしたみたいで
「プログラムの追加と削除」で
171を先に消して 172を消そうとしたら 
アンインストール フォルダが見つからないと言われてしまって
削除することができません。
とりあえず 073を上からインストールする形になってしまったのですが。。。
よろしければ 回答お願いします。

11 8/09 00:27 level
(c11) [2004/08/09 00:27:17] by level

0.7.3をインストールして動いているのですよね?
であればそれでよいのではないですか。

あと、一般的な問い合わせは以下の掲示板に出していただいたほうが
適切かつ迅速な回答が得られると思います。
http://www.mozilla.gr.jp/forums/
http://ryuzi.dyndns.org/mozillazine/html/modules/news/

トラックバック

トラックバックは検索対象外です。