0

I'm using cookies in my Java EE application (jQuery on the client) and while taking security as a key point, I came to know that one can read the cookies and edit them by reading article's. I'm really want to make application out of these attacks.

I read How to prevent Javascript injection attacks within user-generated HTML on SO and didn't find a solution to make my cookies secure.

4

3 に答える 3

1

セキュリティリスクを軽減するためにCookieに設定できるフラグがいくつかあります。

  1. 安全なフラグ。クッキーはhttps経由でのみ送信する必要があります。サイトでhttpsを使用している場合でも、これは重要です。なんで?銀行のサイトがエンドユーザーにhttpsの使用を強制するとします。ユーザーはhttpsを介して銀行サイトに接続し、正常にログインします。銀行のサイトは、httpsを介してCookieをユーザーのブラウザに送り返します。ハッカーがネットワークを盗聴し、エンドユーザーと銀行サイトの間のすべてのクリアテキスト通信を見ることができると仮定します。明らかに今のところ、Cookieは安全なチャネルを介して送信されるため、ハッカーは何も見ることができません。HttpOnlyフラグが設定されていない場合にハッカーができることは次のとおりです。

    a)ハッカーがサイトwww.maliciouscode.comを作成します。

    b)エンドユーザーにリンクを記載した電子メールを送信し、エンドユーザーをサイトに誘導します。

    c)ユーザーは餌を取り、別のブラウザタブを介してhttp://www.maliciouscode.comサイトに接続します。

    d)悪意のあるサイトは、httpを介してユーザーのブラウザを銀行のサイトにリダイレクトします。

    e)ユーザーブラウザは、HTTPを介して銀行のサイトにCookieを送信します。

    f)ハッカーは、Cookieがクリアテキストとして送信されるため、Cookieを傍受し、自分のブラウザに配置して、ユーザーとしてログインします。

  2. HttpOnlyフラグ。名前は誤解を招きます。これは、セキュアフラグの反対ではありません。これは、Cookieがhttp(およびhttps)プロトコルを介してのみブラウザで使用されるべきであり、JavaScriptなどの他の手段では使用されないことを意味します。HttpOnlyをサポートするブラウザがHttpOnlyフラグを含むCookieを検出し、クライアント側のスクリプトコードがCookieを読み取ろうとすると、ブラウザは結果として空の文字列を返します。これは、XSS攻撃を防ぐためです。

于 2013-03-02T01:33:23.697 に答える
-2

Cookie は安全ではありません。それらを保護することを忘れてください。

  • すべての通信を HTTPS で行うことにより、サーバーを保護する必要があります。HTTPS は、何よりも Cookie を保護します (ただし、セッション ハイジャックから保護することはできません)。
  • セッション ID 以外の機密情報を Cookie に保存しないでください。
  • Cookie が HTTP ONLY として設定されていることを確認してください。そうでない場合、セッション ID はクエリ文字列の一部として送信され、誰でも傍受 (およびキャッシュ) できます。
  • ユーザーのログイン、パスワードの変更などの主要なイベントでセッション ID を再生成します。
于 2013-03-01T22:16:56.297 に答える