加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc – MVC AntiForgeryToken重用以前生成的令牌

发布时间:2020-12-16 06:49:26 所属栏目:asp.Net 来源:网络整理
导读:目前我正在研究ASP .NET MVC 4应用程序.我们使用提供的[ValidateAntiForgeryToken]和相应的@ Html.AntiForgeryToken()来生成我们使用POST提交的表单中的隐藏字段. 到目前为止,该机制似乎正常工作,因为如果我没有将令牌作为输入隐藏字段提供给使用[ValidateAn
目前我正在研究ASP .NET MVC 4应用程序.我们使用提供的[ValidateAntiForgeryToken]和相应的@ Html.AntiForgeryToken()来生成我们使用POST提交的表单中的隐藏字段.

到目前为止,该机制似乎正常工作,因为如果我没有将令牌作为输入隐藏字段提供给使用[ValidateAntiForgeryToken]注释的目标Action,则会按预期引发错误.

但是我觉得很奇怪,如果我使用Firebug或Chrome检查器捕获了几个生成的令牌,将它们复制到记事本然后转到另一个页面,该页面也使用AntiForgeryToken并且基本上用任何先前生成的令牌替换隐藏字段,这是一个错误没有提出.我期望总是有一个1:1的关系(Page Hidden Field – ValidationAtServer),因为如果某人能够获得该值,将能够在应用程序中伪造任何需要AntiForgeryToken的任何形式的请求

我的印象是,一旦生成令牌,就不可能重复使用相同的令牌,我认为这是框架本身的安全漏洞.

如果有人能够提供更多的洞察力,将会非常感激它.

解决方法

AntiForgeryToken是会话库,因此每个用户具有相同的令牌,但另一个用户将具有不同的令牌.这个震荡可能对你有用: AntiForgeryToken changes per request

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读