Mozilla Firefox1.0.3に最高レベルの脆弱性 90
ストーリー by yoosee
炎上 部門より
炎上 部門より
mew曰く、"Secunia のアドバイザリによれば、現時点で最新リリース版のMozilla Firefox 1.0.3に二つの脆弱性が存在し、既に Exploit code も公開されている。
二つの脆弱性を合わせた重大度は、滅多に出ない最高レベル「Extremely critical」。
現時点でパッチは存在せず、対策は「JavaScriptを無効とすること」。
ひとつは「"IFRAME" JavaScript URL」に関するクロスサイトスクリプティング脆弱性。もうひとつは、リモートからのソフトウェアインストール機構(アドインや拡張など)に使われるJavaScript関数でのURL引数の検証漏れに起因する、任意JavaScriptコードの実行権限の奪取が可能となる脆弱性となっている。これらが組み合わさると、Firefoxユーザがこの脆弱性を利用したページの任意の箇所をクリックしただけで batch/exe 等攻撃コードが実行されてしまうようだ。"
関連記事です (スコア:4, 参考になる)
# いつも適切なタレコミ内容の補正ありがとうございます>編集者様
関連記事の進捗 (スコア:2)
2005-05-09 00:01 PDTに修正がチェックインされています。盆栽の該当部 [mozilla.org]。trunkには未チェックイン。
関連記事の進捗の2 (スコア:2)
コードは綺麗に書きましょう (スコア:3, すばらしい洞察)
その Explot code [frsirt.com] が非常に読みにくいのですが…。
まず、コードのHTML部分はW3Cの仕様書に準拠させて下さい。
JavaScriptの部分が乱雑で訳分からないので適切に改行や
コメントを入れて読みやすくするように心がけて下さい。
Re:コードは綺麗に書きましょう (スコア:1)
分かる人には分かるようにコンパイルエラーになる構文を入れたりとか。
Re:コードは綺麗に書きましょう (スコア:2, すばらしい洞察)
質問: じゃあおまえさ、exploitコード読まずに今回の脆弱性の原因が何で、今後どういう点に注意して開発しないといけないのか答えてみろよ。
Software installationを無効にしよう (スコア:3, 参考になる)
http://www.mozillazine.org/talkback.html?article=6582 [mozillazine.org]
Re:Software installationを無効にしよう (スコア:3, 参考になる)
探しちゃいました.関係部意訳.
[ツール(T)]-[オプション(O)...]で、[Web機能]の
"Webサイトによるソフトウェアのインストールを許可する"の
チェックを外す.
"許可サイト"のリストを全部クリアするでもいい.
"addons.update.mozilla.org" , "update.mozilla.org"の
二つが大事.ダウンロードできなくなる心配はない.
やなぎ
字面じゃなく論旨を読もう。モデレートはそれからだ
Re:Software installationを無効にしよう (スコア:2, 参考になる)
この脆弱性は、(1) IFRAMEの脆弱性を使って、アクセスをこの"white list"に載っているサイトとFirefoxに誤認させる (2) (1)のチェックを通過した状況で、JavaScriptの脆弱性を使って任意のコードを実行させる というもので、上に挙げた二つのサイトについてはサーバー側で(1)を防ぐ対策済み、ということだと思います。
JavaScript を無効にしてください。 (スコア:2)
セキュリティアドバイザリ 2005-42 [mozilla-japan.org]
# Suite もダメなのか・・・
Re:Software installationを無効にしよう (スコア:1)
こんな設定有効にしたまま使っている人ってそんなに居ないと思いますが。
拡張機能をインストールする時だけ有効にすれば良い訳だし。
Re:Software installationを無効にしよう (スコア:1, 参考になる)
>こんな設定有効にしたまま使っている人ってそんなに居ないと思いますが。
確認してみたところチェックされていました。
おそらく、デフォルトでチェックされてるんじゃ?だとしたら、相当数の人が有効にしたまま使っていると思います。
Re:Software installationを無効にしよう (スコア:1)
Re:Software installationを無効にしよう (スコア:1)
何をもって問題ないと判断したのかわかりませんが、
今回の2件の脆弱性を組み合わせる事によって
その二つの許可サイトからと見せかけて任意のプログラムを
実行させることができるという脆弱性なのでは?
だからExtremely criticalなんですよね。
Re:Software installationを無効にしよう (スコア:1)
これで完全に安全というわけではありませんが。
Re:Software installationを無効にしよう (スコア:1, 参考になる)
「JavaScript を一時的に無効にするか、ソフトウェアインストールを無効にする」って自分で書いてるくせに、リンク先は両方ともやる方法が図解されてます。
Exploitよりも問題なのは (スコア:2)
何で、JavaScriptからbatch/exeの実行ができるような仕様になってるんだ?
もしもこんな仕様でなければ、セキュリティレベルも高ぐらいで済んだんじゃないかと思うんだけどなあ。
Re:Exploitよりも問題なのは (スコア:1, 興味深い)
Re:Exploitよりも問題なのは (スコア:1)
XPIにbatch/exeをキックする機能が本当にいるのか。
なんか今回の騒動を見ていると、XPIとsoftware installationの許可サイトが、IEにおけるActiveXとセキュリティゾーンの関係とダブって見える。
software installationの許可サイトやセキュリティゾーンを偽装されると、たちまちチュドーン!とやられるのではユーザは安心してブラウズできないと思う。
Re:Exploitよりも問題なのは (スコア:1)
今さらですが、IE4との互換性を向上させてみました。
ってなわけはないわな。
Re:Exploitよりも問題なのは (スコア:1)
だけの用途で使われる言語ではないですよ。
今回の場合は、問題のコードを含む拡張機能等をエンドユーザが任意に
インストールし有効にした際、想定しないプログラムが実行される
可能性がある、という事だと思います。
Re:Exploitよりも問題なのは (スコア:1)
IFRAME→JavaScript→XPI→XPI内のJavaScript→batch/exeという流れでやられちゃうわけだよね?
最終的にbatch/exeを起動できる仕様がダメなんじゃないのかと言ってるんだが。
Exploit Codeで言うと、 の最後の部分である「launch();」こんなのができるのが問題なのではないかと。
# batch/exeを起動しているのはこのlaunch()だと思うんだけど、外してたらゴメン。
HTMLから始まってbatch/exeに到達できるルートがあるのはダメだと思う。
Re:Exploitよりも問題なのは (スコア:3, 参考になる)
Exploit Code で言うと、
が問題になるんでしょう。個人的にはもうこれいらないと思うんですが。
ただし、PrivilegeManager の正常動作の場合は、普通は警告が出まくるようになっています(cancel 可能)。Web 上だと about: config で signed.applets.codebase_principal_support を true にしなければ使うことさえできません。true にして対象の javascript を signed script にしても警告が出ます。ローカルファイル(file:) だと ON にしなくてもつかえますが、やはり警告が出ます。
今回の脆弱性の2番目のもの、
これが、PrivilegeManager からの警告をスルーしてしまう大穴です。
Re:Exploitよりも問題なのは (スコア:1)
やはり、技術的に分かっている人の解説はいい!
732879のACにも感謝。
# しかし、記事の投稿から丸一日経って初めてExploit Codeの技術的な解説がなされるっていうのは、なんか寂しいよなぁ。
Re:失礼しました。 (スコア:1)
最終的にbatch/exeを起動できる仕様がダメなんじゃないのか、とのこと
ですが、XPI側の段階で、その機能をインストールするにはユーザーの意志決定が
必要なのではないでしょうか。信頼の置けないサイトの提供する機能は
インストールしない設定にしておけば防げるというような記事だったと思うのですが
某OSを提供している大企業のどなたかも言ってましたけど、
ユーザーが自分の意志で実行したりインストールしたりするのを防ぐ決定的な手段は
私は無いと思います。
信用の置けないサイトが提供する機能はインストールしない設定にしておくというの
は、信用の置けないサイトが配賦しているフリーソフトウエアをダウンロードし
インストールしないのと同じ事であり、ユーザ側の方で常に最低限、
心がけるべき事なのではないでしょうか。
個人的には悪意のあるコードが含まれるプログラムの実行前に、
該当プログラムに対してユーザー側に明確な実行への意志決定が介在する
のであるなら、結果への責任はそのユーザーが負うのが筋なのではないかと
思っています。その脆弱性の為に完全にオート
で(ユーザーの意志決定の介在余地無く)実行される類で無い限りは。
もちろん、今回は脆弱性をついたコードという事なので、それを素早く埋める
努力をするのは提供側の義務でもありますけど。
そうとは言えません (スコア:1, 参考になる)
> という流れでやられちゃうわけだよね?
違います。XPI内のjavascriptは何の関係もありません。
> launch()
そうです。
しかしながら、仮にlaunchというメソッドがscriptableでなくなったとしても、依然として実行ファイルを実行する方法はありますし、他のセキュリティリスクが回避できるわけではありません。例えば、既存の実行ファイルとすげ替えることもできるので、スクリプト上からの実行を阻んだとしても、何の解決にもなっていないのです。(そのファイルがOSの起動ごとに実行されるシェルや実行ファイルである場合を想像してみてください。)
webからXPCOMを使える状態にされた時点でこの勝負は「負け」です。逆に言うと、launch()メソッドの有無による安全性への影響はゼロです。
Re:そうとは言えません (スコア:1)
許可リストに加えられたサイトは、正当な権利としてそれらができてしまうんですよね?
違います。前にも書きましたが、PrivilegeManager の存在が問題です。
「Webサイトによるソフトウェアのインストールを許可する」と可能な XPInstall に PrivilegeManager の警告を無視してしまう脆弱性があったということで、XPInstall そのものには「実行中のユーザ権限をまるごと与える」ことはできません。
#ファイルの作成・削除・移動はできるけど...これもやばいんだよなぁ。
現在Exploit codeは動作せず (スコア:2, 参考になる)
私にはこのコード改変の難しさはわかりませんが、脆弱性に対してこのように多角的に対処する姿勢は見習いたいものです。
重要度最高の脆弱性の頻度 (スコア:2, 参考になる)
まあ、1ヵ月1件のペースですかねえ。
特に時が経ち、シェアが増えるにつれ、重要度の高い脆弱性の頻度もだんだんと上がってきている様子がうかがえるので、今後もちょっと注意が必要かもしれません。
実力のみせどころ (スコア:1, 参考になる)
さて、パッチ提供までどのくらいかかるか。セキュアを売りにしたブラウザの真価が問われますね。
時間がかかるようなら「IEのほうがまし」とされてユーザー離れを招くでしょう。
是非がんばっていただきたい。
Re:実力のみせどころ (スコア:2, 興味深い)
運営ってどうなっているのでしょうか。
これが企業製品であれば、恐らく専門に対処する部署もしくは
担当者が居るであろう事が想像され、担当者が出社の後、
出社→対策検討→対処→テスト→リリース→アナウンスという
ようなフローに乗る事が期待できるワケです。
で、オープンソースである場合、担当者が別口で仕事を持って
いる事が想像され、そちらが忙しかったりデスマだったりすると、
上手に運営が流れないのじゃないかと心配になる。
Firefoxなんか、問題があると影響度が多いソフトウェアなんか
だと、専任部隊が居たりするのでしょうか。
Re:実力のみせどころ (スコア:2, 参考になる)
>いる事が想像され、そちらが忙しかったりデスマだったりすると、
>上手に運営が流れないのじゃないかと心配になる。
オープンソースの開発者は片手間にプロジェクトの仕事をしていると
いうのは、そういうプロジェクトや開発者もいるだろうけど、
そうではないものもありますね。
有名で大規模なプロジェクトは専任の開発者をもっているところが
ほとんどじゃないですかね。
あと、
>Firefoxなんか、問題があると影響度が多いソフトウェアなんか
>だと、専任部隊が居たりするのでしょうか。
という疑問については、とりあえず直接的な回答にはならないと思いますが
「Mozillaのセキュリティバグの扱いについて」(訳) [mozilla.org]が参考に
なるのではないでしょうか。
2年以上前の文書なのでちょっと古くて現状とは違うかも知れないけど。
Infoseekの機械訳 [infoseek.co.jp]は割と正確に訳せてていいんじゃないかと
思います。
Mozilla セキュリティバグの取り扱い (スコア:1)
# (訳)とあるけどリンクしそこねただけ?
Re:Mozilla セキュリティバグの取り扱い (スコア:1)
#訳ってのはタイトル文だけ訳しましたってだけで深い意味はないです。
Re:実力のみせどころ (スコア:1)
次の自動更新は速やかに行われる事を期待してます。
Re:実力のみせどころ (スコア:0)
で、どの程度の時間が掛かると「IEのほうがまし」なんでしょうか?
Re:実力のみせどころ (スコア:1, すばらしい洞察)
IEのほうがましな気がしてくる程度の時間
Re:実力のみせどころ (スコア:2, 参考になる)
http://itpro.nikkeibp.co.jp/free/ITPro/NEWS/20050509/160520/
Re:実力のみせどころ (スコア:1, 興味深い)
ソースコードを参照可能な事からクローズドソース
プロジェクトよりも短期間で攻撃コードが作られる
ことでしょう。
したがって、パッチリリースまでに許される時間は、
クローズドソースのアプリケーションよりも
短いはずです。
現在、英語版1.0.2 (スコア:1, 参考になる)
日本語版1.0.2は一昨日ようやく組み込みアップデート (スコア:1)
一昨日の夜、ようやく日本語版Firefox 1.0.2の組み込みのアップデート機構が働いて1.0.3にアップデートできました。なんでリリースから3週間もかかったんだろう。
次の1.0.4リリースはいつで、組み込みアップデートが1.0.4に反応するのはいつになるんでしょうね。ここしばらくは自分では使っても他人には勧めてません。
Re:現在、英語版1.0.2 (スコア:1, 参考になる)
が、
デスクトップ上のショートカットから起動させようとすると、画面が白いままで止まっています。(メニューバー等は表示されていますが、操作は不能)
SafeModeで立ち上げると、きちんと起動し、その状態で通常のショートカットから起動させると立ち上がります。ただし、拡張機能は機能していません。
う~ん、拡張機能の整合が取れていないようだ。
まだまだ、人には勧めにくいかな・・・
Re:現在、英語版1.0.2 (スコア:2, 参考になる)
試しに新規にプロファイルを作ってみたら、再現しなくなりました。
#何が原因かとか調べてないんですが、とりあえず報告、ということで。
Re:現在、英語版1.0.2 (スコア:1)
extensionsを全てインストールし直すことで復旧できましたが。
extensionsごとの一時利用停止とか設定できると便利そうな気が。
Re:現在、英語版1.0.2 (スコア:1)
# これで上手くなおるとは限りませんが...
## なぜか Fx1.0.3 by Windows が発表後すぐに更新チェックでアップデートできたのでID
M-FalconSky (暑いか寒い)
ついでにメモリ食いもなんとかならないかな (スコア:1)
屍体メモ [windy.cx]
Re:ついでにメモリ食いもなんとかならないかな (スコア:1)
小気味よく動くように感じる今日このごろ(^^;
Re:ついでにメモリ食いもなんとかならないかな (スコア:1)
Bug 131456 [mozilla.org]かな。1.1を待つよろし。
でもセキュリティ関連じゃないからオフトピだよね。
1.0.4 candidate builds (スコア:1)
Asa Dotzler on firefox, cats, mars, and more: 1.0.4 candidate builds [mozillazine.org]
Re:1.0.4 released!! (スコア:1)
初出が5/8の様なので約100時間程度で解決した事になりますね。
# まぁ、水面下でも作業していたので、実際にはたいして短縮して
# いないのかもしれませんが
さぁ、タレコミレースのスタートです(ぉぃ。
# 私は棄権しておきますorz
『今日の屈辱に耐え明日の為に生きるのが男だ』
宇宙戦艦 ヤマト 艦長 沖田十三氏談
2006/06/23 JPN 1 - 4 BRA