ちまたをちょっとだけ騒がせた、POSTで送る同値の変数を大量に送りつけて
サービスを重くさせるDDoS対応のバージョンということで、
なんか新しくLemonとかいうのが必要になっているのだけれど、それも含めてサクっとインストール。
話題になった点の対処として、max_input_vars ディレクティブを追加。
デフォルトは1000なのだけれど、このサイトでそんなにパラメータを使うことはないので、
以下の設定にした。
それはそれとして、そろそろPHPを置いてるディレクトリについても、
制限をかける頃合いになってきたと思うので、更に以下を追加。
phpが触れるファイルの場所を open_basedir 配下のみに限定させる。
phpがファイルを検索する場所のリスト include_path を設定。
include_pathの設定は適切に行えば、自前のライブラリ置き場として使える。
既存のソースもひと通り、ライブラリ側を利用するように変更して、
試しに幾つかの画面を表示させてみると、そこにはなつかしのPHPエラー画面が。
open_basedirの設定は、phpが操作する全ファイルが対象になるので、
phpのセッション情報置場の /var/tmp と、2ch proxyの allowlist.db が設定から漏れていた。
上記2つの場所も追加して、ようやく事象は解決。
次は、phpから実行できるプログラムの制限をしたいのだけれど、どうやればいいのだろう?
コメントを残す