4

こんにちは、みんなセッションの固定、セッションリプレイとセッションハイジャック攻撃の間に明確な違いを与えることができる、私は多くの記事を読んだことがあるが、セッションハイジャックとセッションリプレイ攻撃...事前セッションリプレイとセッションの固定とセッションのハイジャック

+0

あなたの現在の理解は何ですか、具体的には不明な点は何ですか? –

答えて

3

おかげで固定し、ハイジャックの両方が、最終的に同じ目標を持っている - セッションへのアクセスを得ます。彼らはそれを達成する方法が異なるだけです。

セッションハイジャックは、単にという既存の有効なセッションクッキーを盗み出す行為です。最も一般的には、ネットワークトラフィック(MITM攻撃)をスニッフィングするだけでなく、セッションIDが漏洩する可能性のある他の方法によっても発生します。

セッション固定は似ていますが、逆になっています - あらかじめ定義されたセッションクッキーは、犠牲者のブラウザに植えたです。したがって、被害者がWebサイトにログインした後、攻撃者が既に知っているのと同じセッションCookieが使用されるため、攻撃者が所有するCookieが認証され、悪用される可能性があります。
もちろん、攻撃者は犠牲者のブラウザ自体に一時的にアクセスする必要がありますが、原則は非常に簡単です。最初に管理している場合は、データを盗む必要はありません。攻撃者が既には、(固定またはハイジャック経由)セッションクッキーへのアクセス権を持って、それがためにクッキーを再利用するだけの行為だ場合

リプレイは少し異なっており、二つのことを意味することができます...

彼らが望むものは何でも。
それ以外の場合は、犠牲者をトリックして、以前の有効なリクエスト(同じセッションCookieを使用)を再送信することを参照できます。例えば、ユーザーは、単一のユニットだけを望んでいた複数の商品を購入することに騙される可能性があります。

注:ここでは説明を簡単にするために「セッションCookie」を使用しましたが、もちろんセッションIDを転送する他の方法もあります。 MITM攻撃やハイジャックのための最も一般的な方法を防ぐために

  • 使用TLS(HTTPS):これらの攻撃から身を守る方法

    。プレーンテキスト接続(つまり、https://スキームを使用している場合にのみブラウザが送信する)に送信されないように、CookieにSecureフラグを設定します。

  • クッキーにHTTPOnlyフラグを設定します。 JavaScriptはCookieにアクセスできません。 JSがクッキーにアクセスできない場合は、そのクッキーに漏洩することはできません(ハイジャックすることはできません)。クライアント側のコードを悪用する方法はたくさんあります。
  • 定期的な短い時間間隔だけでなく、ユーザーが実行するすべての権限変更アクション(セッションの追加のフォームがある場合はログイン、ログアウト、ログインなど)でセッションIDを再生成します。これは、に対するすべての攻撃のうちの3つの攻撃のうちのに対する軽減メカニズムとして機能します。
  • 固定を防止するために、アプリケーションがサーバー側のレコードと一致しないセッションCookieを拒否するようにします。
関連する問題