防止CSRF漏洞,CSRF令牌的替代方法


Prevent CSRF Vulnerabilities, Alternative methods to CSRF Token

防止CSRF的常见方法是使用隐藏在表单中的令牌。我很好奇,这是防止csr的唯一方法吗?人们争论CSRF令牌不需要让我发疯,我需要了解为什么。如何防止CSRF攻击?

实际上使用CSRF令牌只是另一层防御。根据OWASP跨站点请求伪造(CSRF)预防备忘单,验证请求来源也可以用于CSRF保护。为了验证来源,我们可以使用

  1. 头起源
    • Origin报头包含发起请求的方案、主机和端口信息。
  2. 引用页头
    • Referer头包含上一个网页的地址,从这个网页链接到当前请求的网页。

然而,使用这种方法有一些限制,比如头的不可用性和完整性。攻击者有多种方法可以更改这些标头的值。因此,建议总是有多层防御。