item php.ini セキュリティ強化編

technique ... PHP > 設定

written 2006/6/9

注) ここで取り上げている項目がすべてではありません! 私が特に気をつけているものから、とりあえずいくつかを挙げているだけです。

register_globals

これは危険なので有名ですね。POST値やGET値、Cookie値などとして渡された値がそのままグローバル変数になってしまう。危険極まりないです。ふつうデフォルトでOffですが一応確認。

register_globals = Off

よけいな情報を出さない

下記expose_phpがデフォルトの「On」になっていると、HTTPヘッダに「X-Powered-By: PHP/4.2.3」などと、バージョンまで表示されちゃいます。
攻撃者に情報を与えないという観点では、ここは隠蔽しちゃいましょう。
ちなみに、Mozilla Firefoxに拡張「Web Developer」を入れ、「View Response Headers」を実行すると、webページのHTTPヘッダを確認できます。

expose_php = Off

HTTPヘッダにApacheのバージョン等が出ているのを隠したい場合は、Apacheの設定をいじらなくてはいけません。

セッション関係

Session関係では、セッションIDの情報をクッキーなしで使用するという、「セッションIDのURL組み込み」機能が気になります。「index.php?PHPSESSID=asdyuhjhh...」などとするとセッションIDが有効になるというのですが、これって、セッションハイジャックの危険性をはらんでいるのでは・・・。ということで無効にしてみます。

session.use_trans_sid = 0
 # ↑これは自動変換機能。1で有効、0で無効です。
session.use_only_cookies = 1

session.cookie_lifetimeは、セッションのcookieの有効期限です。デフォルトの「0」だとブラウザを閉じるまでずーっと有効になっています。複数の人間で使っている共用クライアントPCで、前の人がパスワード入れたまんまどっかに行っちゃったりすると、後の人がセッションハイジャック・・・というより棚からセッション状態ですので、そこそこの設定をしてみましょう。単位は「秒」です。

session.cookie_lifetime = 3600
 # 60×60なのでこれだと1時間。用途に応じて変更。

このコンテンツに投票

■ この記事/文章が気に入りましたら、投票して下さい。

まあまあよいと思った
とてもよいと思った

5 point / 投票数 4 5point

feedbackによるコンテンツランキング
informationfeedback機能について

現在のカテゴリ : technique ... PHP > 設定

1303471

* * *

Written by nt.

無断転載禁止
引用箇所や掲示板への投稿など一部を除いて、当サイト内のすべての 文章・楽曲・画像等は作者ntの著作物です。
▼Webページへのリンクはご自由にどうぞ。
http://www.signes.jp/technique/
WebMaster: nt - Contact | Information | TopPage

Copyright (c) 2002-2010 nt. All rights reserved.