ASP.NET Web サイトのフォーム認証での Cookie リプレイ攻撃について質問されています。
攻撃から保護するために以下のアドバイスに従いましたが、誰かが Cookie を取得できた場合 (短時間ではありますが)、サイトは依然として脆弱であると考えています。ログアウト時にフォーム認証セッションを完全に破棄する方法はありますか?
従ったアドバイスは
私たちは、ASP.NET の範囲内でこれを防ぐために、責任あるすべての措置を講じたと考えています。以下の詳細な回答を参照してください。
ただし、これを防ぐために Microsoft が推奨する手順を実装しました ( http://support.microsoft.com/default.aspx?scid=kb;en-us;900111を参照) 。
· 認証 Cookie がクライアント マシンに書き込まれることはなく、盗むのが困難です。
· アプリケーションは SSL 経由で実行できるため、安全でない接続で Cookie が発行されることはありません
· 15 分間のタイムアウトで絶対有効期限を適用します。つまり、その時間制限を過ぎると、問題の Cookie は役に立たなくなります。
· httpOnly Cookie を使用しているため、誰もこの Cookie をプログラムで傍受したり変更したりできません。
したがって、上記の予防措置が破られたとしても (これは非常にありそうもないことですが)、悪意のあるユーザーが予防措置を破ってログインに成功するまでの時間は 15 分しかありません。