web-dev-qa-db-ja.com

ログイン後のセッションIDの変更

Webアプリケーションにアクセスできるのは、認証されたユーザーだけです。ログインする前に、ユーザーはログイン用のボタンのあるメインページのみを表示できます。アプリケーションはメインページでセッションIDを割り当て、認証は他のアプリケーションによって処理されます。

ログインしてアプリケーションに戻った後も、ユーザーは同じセッションIDを持っています。ただし、ログアウト後に変更されます。

OWASP ASVSは、ログイン時にセッションIDを変更する必要があると述べていますが、なぜこの状況で必要なのか明確なポイントがわかりません。変更する必要がありますか?

8
user187205

ログイン時にセッションIDを変更するのが最善である理由は、潜在的なman-in-the-middle脆弱性によるものです。攻撃者がセッションIDを取得した場合、それを使用して正当なユーザーになりすますことができます。これはセッション固定脆弱性と呼ばれます。ログインごとにセッションIDを変更すると、以前のセッションIDが無効と見なされ、攻撃者がそれを使用して認証することができなくなるため、この脆弱性の防止に役立ちます。

参照:

https://www.owasp.org/index.php/Session_fixationhttps://www.owasp.org/index.php/Session_hijacking_attack

8
Henry F