[PHP-users 32601] Re: セッションで制限しているページが見えてしまう

Shunsuke Yanaka yanakas @ logosware.com
2007年 9月 5日 (水) 13:01:35 JST


実際に試してみました。
私も同様の結果になりました。

session idはcookieで管理している・・・のですよね?

A.phpをブラウザで見ている
=>cookieでsession idを管理
=>B.phpを開いた時に、このcookieからsession idを取得

というだけのことではないでしょうか?

ですので、間にローカルのA.htmlを挟んだとしても、ブラウザでA.phpを見てい
れば、そのsessionが引き渡される、ということだと思います。

当然、A.phpを閉じて、A.htmlだけでB.phpを見ても、sessionデータは存在しま
せん。


で、どんな問題があるかと言うと、
「アクセスの正当性をsessionだけで保証しているページ」でかつ「入力データ
のチェックをサーバ側できちんとしていない」場合、ちょっと困ったことになり
そうです。
データの入力ページで、HTML上(inputタグやjavascript)でさまざまな制限を
かけたとしても、そのページをローカルに落として、そこら辺の制限を削除して、
ローカルからデータを送信すると、「sessionは元のページのcookie」、「デー
タはローカルで改竄されたもの」で通ってしまいかねません。






PHP-users メーリングリストの案内