3

シナリオ:

複数のユーザーが同時に使用した場合、Cookie ベースのログインがオーバーライドされ、1 人のユーザーが他のユーザーの情報を表示することがあります。

セッションは完全に Cookie ベースであり、サーバーへの各要求は、有効なユーザーとセッションの Cookie にエンコードされた値を介してデータベースで認証されます。

アプリケーションは、Spring MVC フレームワークを使用します。アプリケーションは、何百人ものユーザーが同時に Web サイトにアクセスする場合を除いて、正常に動作します。同時発生の問題はほとんどありません。あるユーザーのデータが別のユーザーと交換されています。

問題の再現に問題が発生しています。問題を再現するために従うべきツール/方法であるテスト リソースは限られています。

4

1 に答える 1

1

このシナリオは、セキュリティ違反です。

システムテストを行っているときにこのシナリオを再現しましたが、あなたの場合にも同じことが当てはまるかどうかはわかりません.
以下の手順があなたのケースに役立つことを願っています。

再現する手順:

  1. あるブラウザではユーザー ID A を使用し、別のブラウザではユーザー ID B を使用してシステムにログインします。

  2. ユーザー A の既存の画面でいくつかの変更操作を行い、ユーザー B には何も操作を行いません。

  3. ユーザー A の最近編集したデータを保存/送信します。

  4. 既存のユーザー (A) のセッションからログオフしないでください。

  5. バックエンド DB で最近変更されたデータとユーザー A に対するタイム スタンプを確認します。

    この時点で、DB は元のパラメーターをそのままリセットする必要があります。

    ここで、ユーザー B のデータ変更を試みます。

  6. バックエンド DB で最近変更されたデータとユーザー B に対するタイム スタンプを確認します。

DB は元のパラメータ値をリセットする必要があります

2 番目のセッション共有行為user Bは行われるべきではなく、2 番目は 1 番目user Bとは異なるセッション ID を持つ必要がありuser Aます。

于 2015-01-20T09:51:36.313 に答える