さらに調査を重ねていくと詳細が判明。
要約すると
Rangeで要求されたサイズを最初に確保しちゃうから、複数のRangeで巨大なものがくるとメモリが無くなっちゃう
ということでした。
最初はさすがにそんなことじゃなくて、入れ子や細工されたRangeの場合を想定してたんですが、まさかこんなことだったとは。
確かに盲点と言えば盲点。
こんなところでメモリーをバカスカ食ってしまうとは・・・。
しかも、Rangeにちょっと細工して数個のヘッダー飛ばしてやるだけでApacheを陥落させることが出来るなんてお手軽すぎる。
しかも既存のApacheだと大抵はその対象になってしまう。
パッチがすぐに出ると思うけどこれを気にサポートの無いApacheの1.3系は撲滅されて欲しいと思う今日この頃。
関連記事