【发布时间】:2016-02-23 14:59:08
【问题描述】:
我的跨站请求伪造令牌是否可以在我的网页源代码上查看 我正在生产中运行一个 Rails 应用程序,可以看到跨站点请求伪造令牌我猜它不应该是可见的
【问题讨论】:
-
它必须是“可见的”并且每个会话必须是唯一的。一旦访问者发送请求,csrf 令牌也会发送到服务器,并与存储在会话中的令牌进行比较。
标签: ruby-on-rails csrf
我的跨站请求伪造令牌是否可以在我的网页源代码上查看 我正在生产中运行一个 Rails 应用程序,可以看到跨站点请求伪造令牌我猜它不应该是可见的
【问题讨论】:
标签: ruby-on-rails csrf
如果不可见,就无法将其放在网页上。如果你不能把它放在网页上,那么你就不能使用它。网页中没有不在源代码或标题中的“秘密”部分,这两者都可以轻松查看。所以,从逻辑上讲,如果它要具有任何功能,它必须是可见的。
因此,为了使其作为安全系统的一部分发挥作用,系统的安全性不能依赖于任何人都无法看到令牌是什么,事实确实如此。系统的安全性取决于token匹配一个储值服务器端:换句话说,就是表单提供的token,即从服务器发送到客户端,需要匹配提交的token BACK TO THE SERVER通过表格。
阅读:https://www.owasp.org/index.php/Cross-Site_Request_Forgery_(CSRF)_Prevention_Cheat_Sheet
【讨论】: