1

PHPの変数にいくつかの重要なデータを配置する必要があり$_SESSION、このデータが安全であるかどうかを知りたいです。クライアントはこの$_SESSION変数内の情報を見ることができますか?セッション内に機密データを保存することでセキュリティに影響はありますか?

4

2 に答える 2

2

いいえ、セッション データはサーバー側に保存されるため、クライアントはセッション データを見ることができません。でも:

共有サーバーを使用している場合、そのサーバーを共有している他のユーザーがアクセスできることは不可能ではありません。

また、セッション データは、クライアント側の Cookie に保存されているセッション ID を使用してユーザーに結び付けられます。Bob が Alice の Cookie を取得できれば、Alice になりすますことができます。

いくつかの解決策も提案しないと、私の答えは完全ではないと思います。

最初の問題を解決するには、暗号化されたデータをセッションに保存する必要があります。

2 番目の問題を解決するには、IP アドレスなどの他の情報も比較して、ボブが他人の Cookie を使用しようとしていないことを確認する必要があります。このようにして、Bob が Alice の Cookie を盗んだ場合、Bob の IP をセッションに保存した Alice の IP と比較し、不一致を見つけることができます。

于 2013-03-21T02:04:41.467 に答える