首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >什么时候可以在登录页面中不使用防伪令牌呢?

什么时候可以在登录页面中不使用防伪令牌呢?
EN

Security用户
提问于 2019-02-21 21:44:42
回答 2查看 3.4K关注 0票数 1

这个职位中,有一段提到无需在登录页面中验证防伪造令牌的场景:

什么时候可以取消防伪令牌?通常,如果目标是URL,并且访问该URL没有副作用,那么您不需要在该URL中包含防伪造令牌。

我理解CSRF的攻击是如何工作的,但我对这段很遗憾。上面写着:

  • 如果目标是URL
  • 如果访问该URL没有副作用

是否有一个不是URL的目标?什么是“副作用”的例子?

我有一个ASP.NET MVC应用程序,托管在subdomain.domain.com这样的URL上。我的用户收到以下错误:

“提供的防伪造令牌用于与当前用户不同的基于索赔的用户。”“抗伪造cookie令牌和表单字段令牌不匹配。”“提供的防伪造令牌是为用户提供的”,但当前用户是>“XYZ”。

换句话说,我的问题是,在什么情况下,不使用防伪造令牌登录页面是可以的?

EN

回答 2

Security用户

发布于 2019-02-21 22:14:45

访问URL可能会产生副作用。例如,如果我登录到Amazon,访问一个URL可能会导致一个项目被购买并发送给我(单击buy)。这是个副作用。或者,它可能会登录我,或者登录我,或者更新一些设置。这些也是副作用。

一般来说,如果一个操作改变了服务器上的某些(持久)状态,或者在这个世界上有一些持久的可观察的效果,那么它就有一个副作用

票数 2
EN

Security用户

发布于 2020-02-20 04:51:16

我的理解是,真正的问题是存储auth凭据的cookie,因为浏览器会自动将其发送到URL。如果您不使用cookie,并且没有总是根据请求发送auth数据的脚本,则不需要防伪造令牌。如果你想一想的话,使用它是没有意义的。如果您只使用JWT令牌或其他令牌(唯一字符串),则它与发送防伪造令牌是相同的,因为最终这就是防伪造令牌。您还应该使用SSL或TLS。

一般规则:不要使用曲奇。他们一次又一次地被证明是一个糟糕的设计模式。

票数 1
EN
页面原文内容由Security提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://security.stackexchange.com/questions/204041

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档