出張おはき゛ろく

Twitterで書ききれないことを書こうと思います。

PHPのDoS脆弱性(CVE-2015-4024)キツくない?

2015/05/14にリリースされたPHP 5.4.41/5.5.25/5.6.9で修正されたDoS脆弱性がある。

Fixed bug #69364 (PHP Multipart/form-data remote dos Vulnerability). (CVE-2015-4024)

バグレポートに細かい話(原理から再現手順まで)が載ってて、要は細工したリクエストを送るだけで、しばらくCPUリソースを浪費するって話と読み取った。リクエストパラメータをパースする段階で起こるので、脆弱性のあるバージョンのPHPをHTTPサーバ経由で実行できる環境が全て影響を受けるんじゃないかなあ。

数年前に話題になったHashdosと、攻撃のお手軽さも影響も大差はない気がするんだけど、あんまり騒がれていない気がする。なんでなんだろう。
いやまぁHashdosはいろんな処理系に共通してたから話題になったんだろうけど。

PHPのアップデートができない場合、IPSとかWAFとかでそれっぽい通信を弾くとか、Hashdosと同様にPHPのpost_max_size設定かHTTPサーバの設定でリクエストのサイズを制限するとかしかないような気がする。原理からするとinput_max_varsは関係なさそう。

あと一ヶ月くらいバグレポートが放置されてたのがおもしろいと思う。

==2015/06/30 追記==

ディストリの対応を1ヶ月ほどチェックしてたんだけど、Red Hat Enterprise Linuxの一部パッケージは対応されたっぽい。対応するCent OSのリポジトリにもパッチが来ているはず。
access.redhat.com | CVE-2015-4024

  • RHEL 7 の php パッケージ(5.4系)
  • RHEL 7 の php55-php パッケージ(5.5系)
  • RHEL 7 の rh-php56-php パッケージ(5.6系)
  • RHEL 6 の php55-php パッケージ(5.5系)
  • RHEL 6 の rh-php56-php パッケージ(5.6系)

RHEL 5 の php パッケージ(5.1系)や RHEL 6 の php パッケージ(5.3系)はまだ脆弱なまま。
っつうか対応する予定あるのかなこれ……。

==2015/07/10 追記==

以下パッケージも対応された。

  • RHEL 6 の php パッケージ(5.3系)
  • RHEL 7 の php54-php パッケージ(5.4系)
  • RHEL 6 の php54-php パッケージ(5.4系)