Mozilla Foundation セキュリティアドバイザリ 2005-58
- タイトル
- Firefox 1.0.7 および Mozilla Suite 1.7.12 で修正された複数の脆弱性
- 重要度
- 最高
- 影響を受ける製品
- Firefox
- Mozilla Suite
- 修正済みのバージョン
- Firefox 1.0.7
- Mozilla Suite 1.7.12
概要
Firefox 1.0.7 および Mozilla Suite 1.7.12 では、総合的な重要度が「最高」とされる複数の脆弱性が修正されました。
- XBM 画像の処理過程におけるヒープオーバーラン [最高]
- 「zero-width non-joiner」配列によるクラッシュ [最高]
- XMLHttpRequest ヘッダの偽装 [中]
- XBL <implements> を利用したオブジェクトの偽装 [中]
- JavaScript の整数オーバーフロー [高]
- 「about:」スキームを利用した特権の昇格 [高]
- クロームウィンドウの偽装 [高]
- リグレッションの修正
XBM 画像の処理過程におけるヒープオーバーラン
予期される終了タグの代わりに空白文字を用いることで不正に終端に達する XBM 画像を読み込むことにより、ヒープバッファオーバーランにつながる可能性のあることが jackerror 氏によって報告されました。これは、ユーザのコンピュータ上で悪質なコードを実行したりインストールするのに悪用される可能性があります。
https://bugzilla.mozilla.org/show_bug.cgi?id=300936
Thunderbird は XBM フォーマットをサポートしていないため、この脆弱性の影響を受けません。
「zero-width non-joiner」配列によるクラッシュ
「zero-width non-joiner」文字の Unicode 配列に関して報告されていたクラッシュが、スタックの不正によるもので、任意のコード実行に悪用される可能性のあることが Mats Palmgren 氏によって報告されました。
https://bugzilla.mozilla.org/show_bug.cgi?id=296134
デフォルト設定 (JavaScript 無効) の Thunderbird はクラッシュしますが、これは攻撃者のコード実行に利用可能であるとはかんがえられていません。Thunderbird でも JavaScript が有効になっていれば影響を受けます。
XMLHttpRequest ヘッダの偽装
XMLHttpRequest に不正なヘッダを追加することが可能でした。これは、ユーザのマシンからサーバやプロキシの脆弱性を悪用したり、サーバやプロキシに対して、単一のリクエストをあたかも個別のリクエストのストリームであるかのように見せかけることに利用される可能性がありました。この脆弱性の重要度は、HTTP リクエストの密輸や同様の攻撃に悪用されかねないサーバの設定値や、どの IP アドレス (バーチャルホスティング) を攻撃者のページと共有しているかによります。
ユーザがプロキシを介して Web に接続している場合、この脆弱性は、任意のホストに向けた単一のリクエストを複数のパイプラインリクエストであるかのようにプロキシに処理させることで、XMLHttpRequest の同一生成元制限を回避するのに利用される可能性があります。これは例えば、ファイアウォール越しにイントラネットサーバ上のファイルを読み取るのに利用される可能性があります。
この問題は Tim Altman 氏と Yutaka Oiwa 氏によって個別に報告されました。
https://bugzilla.mozilla.org/show_bug.cgi?id=297078
https://bugzilla.mozilla.org/show_bug.cgi?id=302263
XBL <implements> を利用したオブジェクトの偽装
内部インターフェイスを実装した XBL コントロールを利用して、MFSA 2005-55 と同様に DOM オブジェクトを偽装できることが、moz_bug_r_a4 氏によって実証されました。重要度は Firefox のバージョンによります。これまでの調査では、Firefox 1.0.x において、この方法で偽装される可能性のある脆弱なインターフェイス機能は明らかになっていませんが、初期の Deer Park Alpha 1 は影響を受けます。
Web コンテンツから、特権のないコントロールによって XPCOM インターフェイスが実装されないよう、XBL に変更が加えられました。
https://bugzilla.mozilla.org/show_bug.cgi?id=299518
JavaScript の整数オーバーフロー
JavaScript エンジンの整数オーバーフローが Georgi Guninski によって報告されました。これは、条件の揃った環境では任意のコード実行に利用される可能性があると考えられます。
https://bugzilla.mozilla.org/show_bug.cgi?id=303213
「about:」スキームを利用した特権の昇格
特権のない「about:」ページから高特権の「クローム」ページが読み込まれないようにする制限を回避する 2 つの方法が heatsync 氏と shutdown 氏によって報告されました。「about:」ページの特権が上がると元のページはアクセスできないため、それ自体では無害ですが、同一生成元違反と組み合わせることで任意のコード実行につながる可能性があります。
https://bugzilla.mozilla.org/show_bug.cgi?id=304754
https://bugzilla.mozilla.org/show_bug.cgi?id=306261
クロームウィンドウの偽装
閉じられたウィンドウへの参照元からウィンドウを開くことで、空白の「クローム」キャンバスを得られる方法が moz_bug_r_a4 氏によって実証されました。結果として開かれるウィンドウには特権はありませんが、アドレスバーやステータスバーなど、通常のブラウザ UI がなく、フィッシングサイトを警告するために設計されたブラウザクロームの安全な機能が働かないため、偽装ページの作成に利用される可能性があります。
https://bugzilla.mozilla.org/show_bug.cgi?id=306804
リグレッションの修正
今回のリリースには、過去のセキュリティアップデートによって発生した以下のバグの修正が行われています。これらは安定性向上のために修正されたもので、セキュリティ上のリスクをもたらすものではありません。
291178 InstallTrigger.getVersion gone in Firefox 1.0.3
300853 Caps crash on cleanup [@ DomainPolicy::Drop]
301180 crash if you stop search and hit the search button again (Mozilla 1.7 only)
302100 Firefox 1.0.6 crashes when loading any page if PAC script uses eval
