CSRF令牌生成:基于时间还是基于会话?

时间:2014-05-29 16:30:36

标签: php forms security session

我想在php项目中安全地处理表单数据。

我发现它可以用

完成
  1. current time based tokens
  2. session based tokens
  3. 我想要最大的安全性。哪种策略好?

1 个答案:

答案 0 :(得分:1)

您绝对不想仅使用基于当前时间的令牌(选项1)。如果每个人都看到相同的令牌,那么攻击者就可以请求当前"令牌本身(例如,通过他自己的服务器)并在CSRF攻击中添加使用它。

选项2不能以这种方式受到攻击,因为攻击者需要在同一个会话中(无论如何实施)才能获得正确的令牌。