犬ターネット

Apache Killer の件を PHP で確認

2011-08-26 apache

こりゃ対応しなくちゃな、という感じのApacheの脆弱性が公開された。

Apache HTTP Serverの脆弱性を突く「Apache Killer」――パッチは48時間以内にリリース予定

以下のPHPスクリプトで、脆弱性があるかどうか確認できる。HEAD HTTP/1.1 で Range 送って、レスポンスヘッダに「Partial」が含まれていたらNGっていう判定。

※ オリジナルは killapache.pl っていうコードなんだけど、そこの判定ロジックをPHP用に書き換えた。
Request-Range を送っても同様の脆弱性が生まれるので、検証コード書き換えた。

いくつかのサイトで試してみたけど、割と対策済み(WAFで弾いてるのかもしんないけど)。とはいえ対策されてないサイトもあったので、以下参考にして対応する必要がある。

Advisory: Range header DoS vulnerability Apache HTTPD 1.3/2.x (CVE-2011-3192)

具体的には、mod_headers 有効にして、httpd.conf に以下書いて対策。

--- 追記 ---

ここに詳しく載ってる。

CVE-2011-3192 Range header DoS vulnerability Apache HTTPD 1.3/2.x

セキュリティ界隈の重鎮、徳丸さんのとこにも記事あがってます。

Apache killerは危険~Apache killerを評価する上での注意~

--- さらに追記 ---

わかってると思うけど、静的コンテンツに対して実行しないと意図した結果にならないと思う。

例えば、リクエスト先が php とか cgi が出力したものだとダメ(「大丈夫!」って判定される)な場合がある。

.gifとか.jsとか.cssとかに対して実行、確認すべき(上記でrobots.txtを指しているのはそういった理由から)


ライブだった

OracleServiceORCLを起動しろハゲ