Mozilla Foundation セキュリティアドバイザリ 2009-41
タイトル: ネイティブ関数からの深い戻り値による JIT 状態の破損
重要度: 最高
公開日: 2009/07/16
報告者: zbyte
影響を受ける製品: Firefox 3.5
修正済みのバージョン: Firefox 3.5.1
概要
悪用可能なメモリ破壊の問題につながると判断されたクラッシュが、Firefox zbyte 氏によって報告されました。escape()
などのネイティブ関数から戻り値が得られた後、特定の場合において、ジャストインタイム (JIT) コンパイラが破損した状態になっていました。これは、マルウェアのインストールなど、攻撃者によって任意のコード実行に悪用される可能性がありました。
クラッシュが発見された元のサイトから問題のあるスクリプトを抽出してくださった、コミュニティメンバーの Lucas Kruijswijk、Nochum Sossonko 両氏に感謝します。
この脆弱性は、JIT 機能に対応していない、Firefox の以前のバージョンには影響しません。
回避策
Firefox 3.5 のユーザは、Mozilla Security Blog にある説明の通り、ジャストインタイムコンパイラを無効化することで、この脆弱性を回避することができます。Firefox 3.5.1 では、この回避策は必要なく、無効化した場合は再度有効化することができます。
参考資料
- https://bugzilla.mozilla.org/buglist.cgi?bug_id=503286
- Mozilla Security Blog の記事「Critical JavaScript vulnerability in Firefox 3.5」