asp.net-mvc-3 – ASP.NET MVC3的AntiForgeryToken有哪些实现细
AntiForgeryToken用于防止CSRF攻击,但是MSDN上的链接并没有让我深入了解AntiForgeryToken究竟做了什么,或者它是如何工作的,或者为什么事情按照它们的方式完成.
从我收集的内容中,它在网页和cookie中创建了一个哈希.其中一个或两个使用散列的IPrincipal.Name,并使用对称加密. 任何人都可以阐明: > AntiForgeryToken如何在内部工作 >示例: >是实施安全的“DoubleSubmit”cookie和其他常见漏洞 解决方法
好的,这是我最好的一击.
1)在内部,mvc使用RNG加密方法创建一个128位字符串作为XSRF令牌.此字符串存储在cookie中以及表单上某处的隐藏字段中. cookie名称似乎是__RequestVerificationToken形式的应用程序路径(服务器端)的基本64编码版本.其中的html部分使用AntiForgeryDataSerializer来序列化以下数据 validate方法基本上反序列化cookie和表单中的值,并根据值(salt / value / ticks / username)对它们进行比较. 2/3)我认为这个讨论更多的是关于何时使用XSRF令牌以及何时不使用XSRF令牌.在我看来,你应该在每个表格上使用它(我的意思是为什么不).我唯一可以想到的是,如果您确实遇到了问题与否,那么这是不能保护的.知道应用名称的base64编码将允许攻击者能够在XSRF攻击期间查看cookie.也许我对此的解释是不正确的. 4)不确定你到底在找什么?我想我会建立一种机制,我会尝试在会话中存储XSRF令牌(如果已经可用),如果没有,那么尝试cookie方法.至于使用的加密类型,我发现了这个SO artcile. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 如何从asp.net中的javascript调用codebehind函数?
- asp-classic – 如何将字符串转换为日期时间格式的经典asp
- asp.net-mvc – System.NotSupportedException:不支持指定
- 甜甜圈缓存是否正常使用ASP.NET MVC?
- .Net Core微服务入门全纪录(四)——Ocelot-API网关(上)
- asp.net-mvc – 与(ASP.net MVC,NHibernate和Spark View En
- asp.net-mvc-3 – Html.Action – 获取与发布
- 在ASP.NET MVC 2中实现DropDownList的最佳方式?
- ASP.NET学习CORE中使用Cookie身份认证方法
- asp.net-mvc – ASP.NET MVC RadioButtonListFor始终是预设
- asp.net-mvc – 为什么验证请求取自ASP.net MVC?
- asp.net-mvc-3 – ASP.NET MVC 3本地化验证消息在
- asp.net – 无法从代码隐藏中调用App_Code类
- asp.net-mvc – 使用WCF/OData作为访问层而不是直
- asp.net – 从IEnumerable获取不同的项目
- asp.net – 在WCF代理中实现Ws-security
- asp.net-mvc3 EditorFor模板名称问题
- ASP.NET MVC 2.0 – RenderPartial和RenderActio
- 在ASP.net中复制PHPBB密码哈希c#
- 一个ASP.NET Web应用程序中的经典.ASP和.NET .as