2016-12-23 16 views
0

私たちのプロジェクトでは、weblogic serverを使用しています。私は、マシンA上で我々のアプリケーション、すなわちにログインしようとした場合、私がログインした後、JSESSIONIDが生成され他のマシンに同じJsession IDを使用してログインする

さて、私はアプリケーションB別のマシン、すなわちマシン上でこの同じJSESSIONIDを使用している場合、私はにプロンプ​​トが表示されますログインページの代わりにホームページ。

私の問題の解決策を提供してください。

+0

私は、ハッカーが盗まれたSessionIDを使用してWebアプリケーションに侵入するのを止めようとしていると思います。たとえば、IPアドレスなどのパラメータを使用して、ユーザーを指紋認証することができます。ユーザーが同じセッションIDを使用していてもIPアドレスが異なる場合は、セッションを破棄できます。もちろん、それは100%ばかげた証拠ではありません – Bassam

答えて

0

設定されていない限り、ほとんどのサーバーは認識できないJSessionIDを破棄し、新しいものを発行します。これは、セッションの固定攻撃を防ぐためです。 TomcatやJettyのようなJavaサーブレットエンジンは、WildFly(UnderTow)やWebLogicなどのさまざまなJ2EEアプリケーションサーバーと同じように機能します。

サーバノード間でセッションを移行するには、サーバを設定する必要があります。サーブレットエンジンとアプリケーションサーバーは自動的には動作しません。アプリケーションサーバーのバージョンのWeblogicドキュメントを調べて、その方法を判断する必要があります。

私はWildflyとTomcat は間違いなくにこの動作をさせるためにmulticast-ipが必要であることを伝えます。環境によっては、マルチキャスト-IPがファイアウォールによってブロックされる可能性があります。さらに、この記事の執筆時点では、ドッキング・コンテナはマルチキャスト・イップ・アウト・オブ・ザ・ボックスをサポートしていないので、ドッカー・コンテナを使用している場合は回避策が必要です。

重要なことは、は、を理解していますが、セッションが自動的に移行されず、そのためにサーバーを構成する必要があるということです。 Weblogicが克服するもう一つのハードルかもしれないマルチキャストIPを使用する場合。

こちらがお役に立てば幸いです。これは私がWeblogicの開発者ではないので具体的です。

+0

あなたの返事をありがとう。 しかし、weblogicサーバーのJSessionIDですべての設定を試しました。しかし、私はそれを整理すべきものがあります。 – Ezazul

+0

OK、WeblogicがJSessionIDをどのように転送しているかをドキュメントから確認してください。それは重要です。マルチキャスト-IPを使用していますか?もしそうなら、それは問題になる可能性があります。この場合、DevOpsが必要になります。 – sagneta

0

session hijackingと記載されています。それを防ぐ方法には多くの良い答えがあります。ステートレスプロトコルである

Prevent session from being replicated when JSESSIONID cookie copied

What is the best way to prevent session hijacking?

HTTPは、クライアントを識別するためのすべての要求で送信されたセッション識別子(主にクッキー)を使用します。最も一般的な方法は、HTTPSを使用してリクエストを暗号化し、途中の誰でもそのセッションIDを見ることを防ぐことです。

考慮すべき重要な点の1つは、攻撃者がマシンに物理的にアクセスできる場合、セッション識別子を簡単に見ることができ、実行できることは何もないことです。そのため、ブラウザのコンソールを開いてスクリプトを実行すると、facebookのようなウェブサイトで警告が表示されます。

関連する問題