久々のサーバ関連ネタです。
マイサーバは安定稼働中なので、細かい修正を除けば全く変更していないのですが、Apacheの脆弱性が見つかったので対応しました。
2chのサーバを落としたやつです。

ローカルのVMで試してみましたが、メモリを食べ、ぐんぐんCPU使用率が上がって、操作不能になりました。危険過ぎる。
個人サーバなので、直接攻撃を受ける可能性は低いと思いますが、考え得る一通りのセキュリティは施しているので、今回も対応する事にしました。

ちゃんとした対応はyumのApacheが更新されてからですが、暫定的な対応策が下記に書いてありましたので、一番影響の少なそうな1番で対応しました。
http://sourceforge.jp/magazine/11/08/25/0351236

Apacheの設定変更

# vi /etc/httpd/conf.d/CVE-2011-3192.conf
# Drop the Range header when more than 5 ranges.
# CVE-2011-3192
SetEnvIf Range (?:,.*?){5,5} bad-range=1
RequestHeader unset Range env=bad-range

# We always drop Request-Range; as this is a legacy
# dating back to MSIE3 and Netscape 2 and 3.
RequestHeader unset Request-Range
# apachectl configtest

※「Syntax OK」と表示されればOK

# apachectl graceful

※エラーが表示されなければOK

攻撃スクリプトを入手

http://pastebin.com/NCDv9eTh
上の方の「COPY TO CLIPBOARD」をクリック

一応、rootでなく一般ユーザで

$ vi apachepartial.pl

※クリップボードの内容を貼付け

$ chmod 700 apachepartial.pl

攻撃してみる

$ ./apachepartial.pl localhost / 30 1 80

↑http://localhost:80/、同時接続数:30、実行回数:1
↑URLはRedirectとかしてるとダメなので、適当なのがない場合は静的HTMLを準備する。

※CPUやメモリ使用量が増大しなければOK
※また、影響を受けている場合はスクリプトの実行時に時間が掛かる。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です