Mozilla Foundation セキュリティアドバイザリ 2007-14

タイトル
Cookie パスの不正利用
重要度
公開日
2007/05/30
報告者
Nicolas Derouet 氏
影響を受ける製品
Firefox
SeaMonkey
修正済みのバージョン
Firefox 2.0.0.4
Firefox 1.5.0.12
SeaMonkey 1.0.9
SeaMonkey 1.1.2

概要

Mozilla 製品の Cookie の処理に関する 2 つの問題が Nicolas Derouet 氏によって報告されました。最初の問題は Cookie パスのパラメータが文字数のチェックを受けていないことで、これを悪用すれば、被害者がブラウザを実行している間に大量のメモリを消費させたり、Cookie の期限が切れるまで必要以上のディスク容量をその保存に使用させることが可能でした。HTTP サーバから送信された Cookie は、HTTP ヘッダの一般的なサイズ制限によってある程度の文字数に抑えられますが、JavaScript によって動的に生成され、document.cookie を利用して追加された Cookie は、スクリプトが生成可能な、潜在的には数十メガバイトというサイズの、非常に長いパスを持つことが可能でした。

2 番目の問題は、Cookie パスと名前の値に Cookie の内部ストレージに利用される区切り文字が含まれていないかどうかのチェックが抜けており、もし含まれていた場合、将来の Cookie データの解釈に混乱を来すおそれがありました。ただし Cookie のホスト名は正しく設定されるため、そのサイトの Cookie が適切に保存されなかったとしても、問題は非常に限定的です。ひとつだけ考えられる例外は、安全な接続を使用していないサイトが「安全な」Cookie を作成できることで (ただし読み取りは不可)、一部のサイトでは問題となる可能性がありました。Cookie ファイルの他の項目は偽装可能ですが、いずれにしても Cookie を設定できるスクリプトは偽装した値を設定することが可能です。

参考資料

https://bugzilla.mozilla.org/show_bug.cgi?id=373228
CVE-2007-1362