我想看看我是否可以完成阻止CSRF,同时不必在服务器上的redis的用户会话中存储任何额外的信息。在请求表单删除帐户时,我是否可以使用随机字符串(uuid4)和带有过期时间的secret对JWT令牌进行签名,并将结果发送给客户端。当表单提交时,我将验证JWT。
如下所示:
const tokenToSend = jwt.sign(uuid4(), SECRET, { expire: 60 })发布于 2021-01-17 15:12:41
描述Csrf攻击的一种简单方法是受害者(登录了易受攻击的网站A)浏览第三个网站B,该网站B伪装成网站A的受害者。因此,为了防止csrf攻击,我们必须将请求(我们想要保护的)设置为不可预测,以便攻击者无法在此之前准备请求。如果您使用jwt作为csrf令牌,则必须使此jwt对于每个请求都是唯一的。
https://stackoverflow.com/questions/65750788
复制相似问题