重新生成会话ID有助于防止固定,劫持或两者兼而有之吗?

时间:2013-07-18 15:42:04

标签: php security session sessionid

是否可以说重新生成会话ID的策略只对通过会话固定防止会话劫持有用?如果没有,重新生成id有助于防止会话劫持?

This popular answer建议通常更改会话ID,因为:

  

..如果攻击者劫持了一个会话,你不希望他们长时间使用它。“

但是如果攻击者已经劫持了一个会话,那么他们只会收到新的会话ID吗?

1 个答案:

答案 0 :(得分:1)

这是一场竞赛。您有2个以上的用户都共享相同的会话ID。在某些时候,您的代码决定重新生成ID,这会将新ID发送给其中一个用户。如果攻击者幸运并且他们的“命中”是获得重新生成的ID,那么他们将处于明确状态并且现在可以完全控制该会话。

如果实际用户获得了重新生成的ID,则攻击者现在留下了无效的会话ID,他们将不得不尝试劫持新重新生成的ID并重新开始。