特定于域的 cookie 是否容易受到 CSRF 的影响?

bio*_*all 3 javascript cookies csrf

假设我在浏览器中设置了一个特定于域的 cookie,如下所示:

document.cookie="foo=bar;domain=.baz.com"
Run Code Online (Sandbox Code Playgroud)

这个cookie容易受到CSRF的影响吗?我一直无法找到这个问题的明确答案。我们目前有一个使用 JWT 设置的身份验证系统,我正在尝试找出如何跨域扩展这些会话。

Cha*_*rth 5

是的。

CSRF 攻击会导致受害者在已通过身份验证的网站上执行意外操作。它的工作原理是诱骗用户提交表单(或类似的操作)。提交的源可以托管在任何域上,但目标是他们登录的网站。由于 cookie 是由原始站点设置的,因此它将与非预期操作一起发送。

所有 cookie 都有域。如果您作为开发人员不设置它们,浏览器将使用当前主机名作为域。事实上,专门设置域来匹配更多主机只会使潜在的目标站点更大。

请参阅跨站点请求伪造 (CSRF)