アカウント名:
パスワード:
アレゲな私としては、どういうアルゴリズムで処理したら、メモリを大量消費することになるのかが知りたいのですが、どなたか解説いただけないでしょうか。
http://d.hatena.ne.jp/nice20/20110829/p1 [hatena.ne.jp]
この辺りが回答っぽい。
#「まず最も誤解されそうな点」の通りに誤解してたけどID
リクエストされたとおりにレンジを処理しただけで、「大量消費」になる、ということでは?
だとすると、なぜApacheだけ? そう考えるとおかしいでしょ、その意見は。
検証してないから推測だけど、Rangeヘッダで重複領域を指定することがHTTPに規定されてないなら、400 Bad Requestを返したり、Rangeの重複部分を結合して返したりしてるのでは?仮に規定されていてちゃんと一つのパラメータに対して、それに応じた範囲のデータを返す必要があるならば、複数のパラメータ分のメモリを同時に確保することはせずに、一つずつメモリ確保して処理するという方法採ったりしてるのでしょう。
検証してないので他のHTTPサーバでも同じ脆弱性が存在する可能性は否定できないけど
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
Stay hungry, Stay foolish. -- Steven Paul Jobs
対処法などはわかった。しかし、ここはアレゲサイトなのですから、、、 (スコア:0)
アレゲな私としては、どういうアルゴリズムで処理したら、
メモリを大量消費することになるのかが知りたいのですが、
どなたか解説いただけないでしょうか。
Re:対処法などはわかった。しかし、ここはアレゲサイトなのですから、、、 (スコア:3, 興味深い)
http://d.hatena.ne.jp/nice20/20110829/p1 [hatena.ne.jp]
この辺りが回答っぽい。
#「まず最も誤解されそうな点」の通りに誤解してたけどID
Re: (スコア:0)
リクエストされたとおりにレンジを処理しただけで、「大量消費」になる、ということでは?
Re: (スコア:0)
だとすると、なぜApacheだけ? そう考えるとおかしいでしょ、その意見は。
Re: (スコア:0)
検証してないから推測だけど、
Rangeヘッダで重複領域を指定することがHTTPに規定されてないなら、400 Bad Requestを返したり、Rangeの重複部分を結合して返したりしてるのでは?
仮に規定されていてちゃんと一つのパラメータに対して、それに応じた範囲のデータを返す必要があるならば、
複数のパラメータ分のメモリを同時に確保することはせずに、一つずつメモリ確保して処理するという方法採ったりしてるのでしょう。
検証してないので他のHTTPサーバでも同じ脆弱性が存在する可能性は否定できないけど