【发布时间】:2011-11-08 12:30:23
【问题描述】:
我想关闭通过 AJAX 发布原始 JSON 的 CSRF 漏洞。
我熟悉 MVC 使用 ValidateAntiForgeryTokenAttribute 和 @Html.AntiForgeryToken() 自动预防 CSRF 的机制;但是,如果我理解正确,此机制要求 POST 使用 Content-Type 或 application/x-www-form-urlencoded(或类似)完成。 ASP.Net MVC 中是否有内置机制可以拒绝 POST 请求的 CSRF,其中 Content-Type 或 application/json?如果不是,我是否坚持将防伪放入 JSON 对象本身?您能否推荐一种技术来保护 JSON POST 请求免受 CSRF 漏洞的影响,其安全级别与 ASP.Net MVC 中内置的基于表单的方法相同?
【问题讨论】:
标签: c# asp.net-mvc asp.net-mvc-3 csrf