客户端会话ID如何受到保护?

时间:2012-05-31 14:27:09

标签: php session

什么阻止某人登录网站Z.进入持有网站Z的Session_Id的cookie,并摆弄它成为服务器识别的其他人?

4 个答案:

答案 0 :(得分:2)

  

什么阻止某人登录网站Z.进入持有网站Z的Session_Id的cookie,并摆弄它成为服务器识别的其他人?

您必须实际知道另一个会话ID才能执行此操作。会话ID非常长且随意,因此您无法猜测其他用户的ID。

答案 1 :(得分:1)

如果我们谈论php会话,答案是“没有人保护他们”!

你必须做点什么才能让它“更安全”。

  • 使用SSL进行身份验证
  • 使会话ID随时间过期
  • 检查IP和用户代理(好的,可以绕过)

依旧......

答案 2 :(得分:1)

只有会话ID的长度和基数。如果它很长,在发现碰撞之前需要数万亿(或更多)尝试。较长的id会将可能的id的数量乘以散列的基数,因此如果您的散列具有数字和小写字母,则每个额外的字符将可能性乘以36。

20个字符的哈希将为您提供36 ^ 20种不同的可能性。如果你将id的长度增加一倍,你将获得36 ^ 40种不同的可能性。让任何人都难以强行进入另一个账户。

答案 3 :(得分:0)

在某些情况下(CodeIgniter框架),您可以对Cookie进行加密,这会使攻击变得更加困难。

最终,您作为开发人员对安全负责,没有任何开箱即用,只需遵循开发安全应用程序的正确安全准则。