2012-08-07 11 views
8

セキュリティやパフォーマンスに懸念があるため、これをセキュリティまたは/ stackoverflowに投稿する必要があるかどうかはわかりません。クッキー管理を修正してください

信頼できるCookie管理の情報源を探しています。私はOWASPを読んだので、危険なものが大体わかった。

ただし、Cookieを使用してユーザーを認証する必要があります。ステップガイドによる完全なステップがありますか?私が何をしたか

  • はランダムで一意の文字列を生成します。

  • 準私のキャッシュrndstring内のユーザーとのランダムな文字列 - >ユーザー

  • は、安全で署名したクッキーを作成します。値=ハッシュ(rndstring +シークレット)| rndstring

  • ユーザーが戻ったら、ハッシュが一致するかどうか、rndstringがキャッシュに入っているかどうかを確認します。

  • はいの場合、ユーザーを取得します。

私は自分で作ったので、私のアプローチには欠陥があると思います。

もう1つの問題は、私のキャッシュ内のdbのユーザーオブジェクトが安全であることです。ユーザーがプロフィールを更新した場合は、キャッシュを更新する必要があります。

私はplay2フレームワーク+ mongoDBでjavaを使用しています。

私にはどのような資料がありますか?

+2

+1「私は自分で作ったため、私のアプローチに欠陥があると思う」 –

答えて

2

私はこれがSecurity StackExchangeの質問だと思っていますが、あなたは最近、excellent answer from DWと似たような質問をしました。あなたの方法論を批評するsecurity.stackexchange.comフォーラムには多くの人々がいます。

あなた自身のセッション管理を開発することは個人的にはお勧めできませんが、実際には反対してください。 「再生フレームワーク」セッション管理は多くの方々から見直されましたが、あなたが忘れてしまった脆弱性はありません。選択したプログラミングフレームワークが提供する組み込みのセッション管理を使用します。あなたは遊びを読んだことがありますか?documentation?

リソースの面では、David Rook - herehereからセキュア開発原則をチェックしてください。

クッキーを使用して意識を変えた場合は、疑わしいトークンをURLに挿入する方法であるweb keys,を見ることができます。

Owaspを読むとき、最新のSession Management cheatsheetを読んでいますか?私はあなたの質問の多くはそこに答えていると思います。

最終的なリソースの1つはSANS Top 25 Software Errorsです。

+0

ありがとうございましたリンクのいくつかは私にとって新しいものです。 Play 2を使用していて、このトピックに関するドキュメントはありませんので、私はこれをやっています。例がありますが、あまり意味がありません。私はまた、私も内蔵のクッキーを使用して言う必要があります。ちょうど私自身の認証で。私もここでplay2の認証についての質問をしましたhttp://stackoverflow.com/questions/11820273/java-play-2-authentication-does-not-make-senseしかし、スライドショー/ pdfは私に有望なようです! –

+0

まあ、おかげさまで私はplay2が提供する機能をできる限り使用しようとしています。 –

1

ハッシュをチェックして一致するたびに新しい一意の文字列を生成し、Cookieの値を更新することをお勧めします。これにより、システムのセキュリティが向上します。クッキーの盗難の場合、ハッキングの確率が低下するためです。

関連する問題