[PHP-users 750] Re: セッション情報の漏洩を防ぐ方法
Naofumi Kondoh
php-users@php.gr.jp
Wed, 18 Jul 2001 10:34:50 +0900
ソフト工房の近藤です。
# 新開さんの方が十分お詳しそうで余計なフォローでした。
renzo@digital-palm.com wrote:
>
> 新開です。
....略...
> 近藤さん
nkon> > COOKIE を使うこと自体がある程度機密レベルを低下させ
nkon> > ています。それを承知なら、COOKIE は手軽で便利ですが。
> Cookieを使用せずにセッションIDをサーバに送信するにはGETかPOSTしか
> ないですよね。CookieはGETやPOSTよりセキュリティ上、危険ということ
> でしょうか?(意味を取り違えていましたら、すいません)
もっと単純な話で、COOKIE の場合、ログアウトのような
特定の処理をしないと、COOKIE が有効期限までしばしの
間 PC の中に残るので、MS Windows 9X などで同一PCを別の
人がPCへのログイン名なしで使うと他の人に対しても
COOKIE が有効になるとか、COOKIE の中身をみれるとか
いう程度の話です。
安全性だけを考え、REFERER 問題を重視すれば、
POST > COOKIE > GET ですかね。
> 私が認識しているGETと比較したCookieの利点は
> 1:セッションIDのReferer漏れがない
> 2:うっかりミスでセッションIDを書き換えられる心配がない
何十桁もある長いIDにしてサムチェックなど
2重チェックにすれば、簡単に他の人の有効
なセッションを乗っ取ることはできないとは
思いますが、危険性があることは確かですし、
目に見えるのが気持悪いという方も。
> 3:セッションIDがブラウザの履歴に残らない
> です。特に3は重要だと思っています。ブラウザの履歴はサーバからは、
> 操作のしようがないので。
ブラウザ側(PC クライアント側)の話ですよね。
COOKIE も、ログアウト処理でも実行しないと残る
し、見ることもできます。
以前川里さんが、BODY TAG の ONUNLOAD イベント
で、ログアウト処理を実行する話をされてました
ね、参考になると思います。
ブラウザの履歴だけなら、JavaScript を使えば
残らないようにもできると思いましたが。
...略....
> また、よろしければご教授願いたいのですが、ApacheのUserをnobodyの
> ままの場合、どのような不都合がありますでしょうか。思いつくのは
> 1:nobodyの持つ権限に問題がある
> 2:ApacheのUserIDを調べる手間が不要な分だけ、クラックされやすい
> 3:専用のユーザを作成して、独自に管理すべき
おっしゃるとおりです。
一垓にはいえませんが、nobody は、特別なパーミッションを
必要としないか持つべきでない特別なユーザー名として使い
はじめられたという歴史的経緯もあるので、Web アプリとして
独立して管理できる専用のユーザー名にすべきだということです。
あえて、nobody を使用するメリットは考えられません。
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
(株)ソフト工房 近藤直文 Email: nkon@shonan.ne.jp
PostgreSQL 汎用DB検索ツール デモ
http://www.softkoubou.co.jp/cslweb/index.php3
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/