纠正cookie管理

Mai*_*ein 8 java authentication cookies mongodb

我不确定是否应该在安全性或/ stackoverflow上发布此消息,因为我担心安全性和性能.

我正在努力寻找可靠的cookie管理来源.我读过OWASP,所以我大致知道什么是危险的.

但我需要用cookie验证我的用户.有完整的分步指南吗?

我做了什么:

  • 生成随机且唯一的字符串.

  • 将随机字符串与我的缓存rndstring - > user中的用户相关联

  • 创建一个安全且签名的cookie.value = hash(rndstring + secret)| rndstring

  • 如果用户回来,我会检查哈希是否匹配,以及rndstring是否在我的缓存中.

  • 如果是的话得到了用户.

我认为我的方法存在缺陷,因为我自己做了.

另一个问题是我在缓存中从db中保护用户对象.如果用户更新了他的个人资料,我还必须更新缓存.

我正在使用java与play2框架+ mongoDB.

你能推荐我什么资源?

Mar*_*ick 2

我认为这是Security StackExchange的一个问题,我注意到您在那里提出了类似的问题,最近DW 给出了很好的答案。security.stackexchange.com 论坛上有很多人会批评您的方法。

我个人不建议开发自己的会话管理,事实上我建议不要这样做。“游戏框架”会话管理已经被许多人审查过,而您的系统却没有,并且很容易存在您忽略的漏洞。我将使用您选择的编程框架提供的内置会话管理。你读过游戏文档吗?

在资源方面,您应该查看 David Rook 的安全开发原则 -此处此处

如果您改变主意使用 cookie,您可以查看Web 密钥,这是一种将不可猜测的令牌插入 URL 的方法。

在阅读 Owasp 时,您是否阅读了最新的会话管理备忘单?我认为你的很多问题都在那里得到了解答。

最后一项资源是SANS Top 25 Software Errors