0

それで、私が取り組んでいる開発プロジェクトでログインスクリプトを作成しているときに、大きな「No-No」を発見しました。

user_ID と暗号化されたパスワードに対して Cookie を設定すると、Google Chrome (または Mozilla Firefox) の単純な拡張機能を使用して、ユーザー ID Cookie を別のユーザーのユーザー ID に編集し、サイトにアクセスできることに気付きました。私が彼らだったように。

これが発生しないように、どのルートをたどる必要があるかについて、誰かが何か指針を持っていますか? さらに情報が必要な場合はお知らせください。

4

2 に答える 2

1

サーバーでパスワードを確認しないのに、なぜ暗号化されたパスワードを保存しているのですか? ユーザーが送信したユーザー ID とパスワードが一致しない場合、そのユーザーはサイトへのアクセスを許可されるべきではありません。

いずれにせよ、$_SESSION変数を使用して、ログインの詳細などの情報を保持する必要があります。この方法では、ユーザーはセッション ID しか見ることができません。理論的には、他の誰かのセッション ID を推測する (またはそれを盗む - セッション ハイジャック) ことは可能ですが、ユーザー エージェントと IP アドレスを同じままにする必要があるなどの追加のレイヤーを追加できます。必要なセキュリティの程度によって異なります。

于 2013-02-05T21:23:22.160 に答える
0

ユーザーをブラウザ セッションよりも長くログインさせておく必要がある場合は、ユーザー データなどをデータベースに保存する必要があります。次に、db の行 ID に一致する Cookie を作成します。参考までに、自動インクリメント ID は使用しません

于 2013-02-05T21:24:37.270 に答える