web-dev-qa-db-ja.com

httpリファラーセキュリティ

引用ヘッダー:プライバシーとセキュリティの懸念 からの引用

たとえば、フッターにソーシャルメディアリンクを含む「パスワードのリセット」ページを考えてみます。リンクがたどられた場合、情報の共有方法によっては、ソーシャルメディアサイトがパスワードのリセットURLを受け取り、共有された情報を引き続き使用でき、ユーザーのセキュリティを危険にさらす可能性があります。

このような場合のセキュリティ上の問題は何ですか?上記のようにソーシャルメディアリンクをクリックすると、ソーシャルメディアサイトにはパスワードリセットリンクのリンクしか表示されません(?)が、ユーザー名やパスワードなどの機密情報は提供していません。フォームまたは上記のシナリオは、私がすでに認証されており、パスワードリセットリンクにアクセスして、「どういうわけか」たとえば私の個人情報が明らかになった場合の問題に対処していますか?

誰かが説明するか、少なくともいくつかの情報を提供してくれませんか?

どうもありがとう !

2
user211245

サイトがパスワードリセット手順を次のように実装する場合を考えてみます。ユーザーIDと現在のタイムスタンプは、サーバーのみが知っているキーを使用した対称暗号化を使用して暗号化され、この暗号化された値がURLに埋め込まれます(つまり、「パスワードリセットリンク」 ')これは、ユーザーのファイル上のメールアドレスに送信されます。ユーザーがパスワードリセットリンクをクリックすると、サーバーはパスワードリセットリンクの暗号化されたユーザーID +タイムスタンプを復号化して、リンクが作成されたユーザーと、リンクが作成された日時を特定します。次に、サーバーは1)ユーザーが実際にファイルの電子メールアドレスに送信された電子メールを受信できたことを確認し、2)リンクが生成されてから次の間に経過した時間を計算できます。ユーザーがリンクをクリックした時間。この時間が許容範囲内(30分以下など)である場合、サーバーはパスワードのリセット要求が有効であると見なし、ユーザーがパスワードを変更できるようにします。

ここで、HTTPリファラーがリークしている質問で参照しているシナリオで、ユーザーがパスワードリセットメールで送信されたパスワードリセットリンクをクリックしたとします。次に、パスワードリセットプロセスを完了する前に、ユーザーが注意をそらしてクリックします。ページの下部にあるソーシャルメディアリンク。次に、パスワードリセットリンクがHTTPリファラーとしてソーシャルメディアサイトに渡されます。ソーシャルメディアサイトは、パスワードリセットリンクにアクセスして、ユーザーと同じようにユーザーのパスワードを変更できるようになります。その後、ユーザーのアカウントへのアクセスを続行できます。

3
mti2935