がるの健忘録

エンジニアでゲーマーで講師で占い師なおいちゃんのブログです。

DoS回避用の max_input_vars が出てきました

攻撃付近については
http://www.ipa.go.jp/security/ciadr/vul/20120106-web.html

PHP, Tomcat などを利用して開発されたウェブアプリケーションにおけるサービス運用妨害 (DoS) の脆弱性(CVE-2011-4885等)


ウェブアプリケーション等で使用されている言語 (PHP, Ruby 等) やウェブアプリケーションフレームワーク (Apache Tomcat 等) のハッシュテーブルの実装方法に問題があり、サービス運用妨害 (DoS) の脆弱性が存在します。この脆弱性が悪用されると、運用中のウェブサービスを提供できなくなるなどの被害にあう可能性があります。

あたりを。後は適宜「ググレカス*1」。


とりあえずパッチを覗いて、なんとなく欲しい情報を見つけてみました。

max_input_vars


PHP_INI_SYSTEM
PHP_INI_PERDIR

…むぅ、やっぱり orz
可能なら「PHP_INI_ALL」がうれしかった気がするのですが…まぁまぁ、やむをえないところでしょう多分。
$_GETとかを「使うタイミングで遅延評価」してるわけでもないでしょうし。…おそらく。


デフォルトはどうも1000みたい。…100くらいでいいような気がするんだけどなぁ? 実際、2個以上のパラメタを、おいちゃんは警戒するし。5個以上なら基本「嫌悪対象」だし。


で、上述に違反すると、どうも

Input variables exceeded [max_input_varsの数値]. To increase the limit change max_input_vars in php.ini.

ってメッセージが出るぽい。


後は…

max_input_vars, php_core_globals, core_globals

ってのが、気になったっちゃぁ気になった。
core_globalsだから、おそらく「ユーザが使う普通のglobals」ではないと思うんだけど(&、おいちゃんの監督下でGlobalなんてつかったら、基本"折檻"レベルのペナルティですが)。
多分これは「HTTPヘッダ使って同様のアタックがくることを防ぐ」感じ、なんだろうなぁ、と。…設定別々だといいのに(苦笑


まぁ、何はともあれ、おそらく結構重要と思われるネタなので。
珍しく、流行を先取りしてみようか、とw

*1:微妙に古いかしらん?