【发布时间】:2017-01-11 15:18:52
【问题描述】:
我正在尝试在我的一个项目中使用 CSRF 令牌实现 CSRF 保护。我是新手,正在阅读有关在向服务器的请求中发送 CSRF 令牌的信息,发现建议通过 GET 将 CSRF 令牌作为 HTTP POST 发送。我的问题是:
如果 HTTP URL 在 GET 请求中暴露了 CSRF 令牌,并且潜在的攻击者可以使用这个 CSRF 令牌创建 CSRF 请求并使用 Javascript 进行攻击,那么当 CSRF 令牌存储为隐藏字段时,为什么他不能这样做以一种形式?如果我的网站存在 XSS 漏洞,那么攻击者可以从隐藏字段中获取令牌并将请求与该令牌一起发送。
提前致谢!!
【问题讨论】:
-
为什么需要对 get 请求进行 csrf 保护?
-
我不需要它,但将来我可能想在暴露为简单锚标记的 URL 中发送令牌。
-
你为什么要这样做?它有什么意义呢?相关:stackoverflow.com/questions/3477333/…
-
另外我建议阅读 CSRF 是什么,因为没有(需要)JS(被)参与。