存储"记住我" cookie和CSRF保护

时间:2016-05-30 05:53:49

标签: security cookies csrf single-page-application csrf-protection

我一直在读那个"记住我" cookies存储在" httpOnly" cookies,因此JavaScript / XSS无法访问它们。然而," httpOnly" Cookie容易受到CSRF攻击,因为它们会自动与请求一起发送。

为了缓解CSRF攻击,建议使用同步令牌模式(让服务器生成csrf令牌并与客户端进行交叉检查)。

我的问题是,如果"记住我" cookie是可用的,CSRF攻击(恶意JavaScript)是否可以发出请求并随后获取从服务器生成的csrf令牌?令人担忧的是,如果攻击有cookie以及要求发送的令牌,那么应用程序的安全性就会受到影响。 如果这确实可行,我们怎么能阻止这种情况呢?

1 个答案:

答案 0 :(得分:2)

不,由于Same Origin Policy,其他域无法读取令牌。

如果请求是服务器端绕过SOP,那么服务器没有从受害者的浏览上下文获取令牌,因此这不能攻击登录用户(服务器只能攻击他们使用的用户获取令牌。)

因此,无需担心(只要你当然没有启用CORS)。