【问题标题】:CSRF security risks if Validation token in header instead of POST body如果验证令牌在标头而不是 POST 正文中,则 CSRF 安全风险
【发布时间】:2012-07-24 13:39:06
【问题描述】:

搜索 CSRF 预防技术中最常见的解决方案是 MVCAntiForgeryToken(MVC 3 附带)实现的,其中服务器的客户端必须在 POST 正文中发布验证令牌。在服务器端,它将根据 Cookie 中存在的令牌进行验证。

在自定义标头中发送验证令牌,并在服务器端验证自定义令牌的值与 cookie 中存在的值是否同样安全?

【问题讨论】:

  • 马上,我想不出有什么理由不这样做。

标签: security csrf


【解决方案1】:

它更加安全 :) 因为即使攻击者可以获得当前交易的有效 csrf 令牌,他也必须发起跨域 ajax 请求以在请求中包含自定义标头。如果用户在他的浏览器中禁用了 js,那么攻击者就会被敬酒 :)。然而,它可以被 java 小程序覆盖......但你知道如果用户没有受过教育并且攻击者真的有动机,那么你可以做的很少;)。

但存在一个问题,如果用户通过防火墙或公司代理访问我们,并非所有自定义标头都会被转发。所以我认为这是使用字段而不是自定义标题的主要原因。虽然有一个防止 XSRF 攻击的标头:OriginThe web origin concept 也作为附加信息Content Security Policy 1.1 这只是一个草稿,但那里提出了一些有趣的想法。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-06-13
    • 2021-02-21
    • 1970-01-01
    • 2012-08-16
    • 2010-10-05
    • 1970-01-01
    • 1970-01-01
    • 2020-03-15
    相关资源
    最近更新 更多