有人可以从浏览器中销毁会话吗?

时间:2014-03-06 05:10:23

标签: php session

基本上,我有一个脚本可以计算失败的尝试次数。如果数字高于5,我将阻止IP Address 15分钟。

问题是在第一次尝试失败后,计数器将等于1然后是2 .. 5

他的机器上有人可以销毁浏览器中保存的所有会话吗?我说的是$_SESSION而不是COOKIES

如果是,我将尝试考虑更改会话计数的方式,并将值存储在本地文件中。

1 个答案:

答案 0 :(得分:10)

  

有人可以从浏览器中销毁会话吗?

否。会话是服务器端构造。会话不会存储在浏览器中。

但是,HTTP是无状态协议,这意味着客户端每次发出请求时都必须标识自己,以便与其会话关联。通常,这是使用cookie完成的。

用户可以删除或修改他们的cookie,因此对抗客户端完全可以在每次查询服务器时获得“新鲜”会话。一般来说,没有任何防攻击方式可以做你想要的事情!

这就是为什么,例如,Stack Exchange要求用户在允许他们投票之前登录。否则他们可以通过删除cookie,更改IP地址等投票多次投票,SE设计师真的,真的不希望你这样做。但是,要求用户帐户仍然不是防弹的,因为您可以create more than one!

当然,你不是第一个面对这个问题的人: