1

CSRF 攻击是否有可能读取受害者浏览器上已经存在的全局 JavaScript 变量的内容?

我的计划是让应用程序存储一个 CSRFToken 值,该值在用户成功登录时存储在会话中,然后我将其保存在一个全局可访问的 JavaScript 变量中以供应用程序使用。我将使用 jQuery 自动将此值附加到应用程序中的任何表单发布操作。在服务器端,我将检查值是否匹配,如果未找到匹配项,则完成操作或阻止它。

我的理解是,可以通过多种方法部署 CSRF 攻击,但它们都需要将受害者重定向到 3rd 方站点以执行恶意代码。例如,第 3 方站点可以尝试伪造表单请求,但除非他们知道 CSRFToken 的内容,否则该操作将失败。除非当然..他们可以以某种方式得到它。这可能吗?

4

1 回答 1

0

根据定义, CSRF 攻击不需要浏览器中的任何数据在 3rd 方站点(即攻击者)上可见。因此,CSRF 攻击不会(或不能)读取浏览器中的任何状态(cookie 或 javascript 变量)。

于 2013-06-06T10:48:10.977 回答