セッション固定

medium Web App Scanning プラグイン ID 98102

概要

セッション固定

説明

HTTP 自体はステートレスプロトコルです。したがって、サーバーは、どのクライアントがどのリクエストを実行し、どのクライアントが認証済みまたは未認証であるかを判断できません。

ヘッダー内で HTTP Cookie を使用すると Web サーバーは個々のクライアントを識別できるため、有効な認証を保持しているクライアントと保持していないクライアントを特定できます。これらは、セッション Cookie またはセッショントークンとして知られています。

クライアントが互いのセッショントークンを推測できないようにするには、割り当てられた各セッショントークンを完全にランダムにし、サーバーとのセッションが確立されるたびに変更する必要があります。

セッション固定は、クライアントが独自のセッショントークン値を指定でき、認証が成功した後にサーバーによってセッション Cookie の値が変更されない場合に実行されます。また、ユーザーが認証された回数とは無関係に、セッショントークンもユーザーに対して変更されないままになることがあります。

サイバー犯罪者は、細工されたURLリンクをリンク内の所定のセッショントークンで送信することで、この機能を悪用します。その後、サイバー犯罪者は被害者がログインして認証されるのを待ちます。成功すると、サイバー犯罪者は有効なセッション ID を知っているため、被害者のセッションにアクセスできます。

スキャナーは、独自のセッショントークンを設定できることを検出しました。

ソリューション

最も重要な修正アクションは、サーバーがクライアントから提供されたデータをセッショントークンとして受け入れないようにすることです。
さらに、クライアントのセッショントークンは、認証中など、アプリケーションフローの特定の主要な段階で変更する必要があります。こうすれば、クライアントが独自の Cookie を設定できる場合でも、認証されたセッションに Cookie が残ることはありません。

参考資料

http://projects.webappsec.org/w/page/13246960/Session%20Fixation

https://www.owasp.org/index.php/Session_fixation

プラグインの詳細

深刻度: Medium

ID: 98102

タイプ: remote

ファミリー: Authentication & Session

公開日: 2017/3/31

更新日: 2021/11/26

スキャン テンプレート: pci, scan

リスク情報

VPR

リスクファクター: Low

スコア: 3.3

CVSS v2

リスクファクター: Medium

基本値: 5.8

ベクトル: CVSS2#AV:N/AC:M/Au:N/C:P/I:P/A:N

CVSS スコアのソース: Tenable

CVSS v3

リスクファクター: Medium

基本値: 6.5

ベクトル: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N

CVSS スコアのソース: Tenable

参照情報