【发布时间】:2012-10-12 23:05:21
【问题描述】:
我是第一次使用用户帐户构建网站。我正在使用户登录安全。在注册时,我在保存密码之前对密码进行哈希处理,然后在登录时如果密码正确,我会使用 setCookie 保存一个带有用户信息的 cookie。
现在劫持帐户就像修改 cookie 值一样简单。我想让网站安全,但我正在阅读的大多数选项似乎太复杂了,我想使用我自己可以做的事情。我已经阅读了一些教程,并且对如何操作有一个基本的了解,但不知道它有多安全。
我的想法是为会话创建一个表并存储用户 ID + 一个随机值,同时保存一个 cookie 并检查每个页面都将这两个值加载到表中,如果它们正确则更新它们。这看起来很简单,即使用户从不同的地方登录也可以工作,但我不知道它有多安全。 cookie 是可见的,但我看不到任何劫持会话的方式,除非有人偷走了 cookie 并在更新之前使用它。
这安全吗?我还可以使用什么其他简单的方法?
【问题讨论】:
-
如果有人偷了你的数据库那种的访问权限,那么无论哪种方式你都搞砸了。只需将 cookie 存储在数据库中并确保您的数据库是安全的。
-
@pst,真的吗?它似乎违反了“使用一次”的定义。
-
@ElYobo 我最初将“如果它们正确就更新它们”作为值的再生。