我一直在阅读有关修复 CSRF 攻击的内容。通过一些研究,我了解到检查非标准标头可以防止 CSRF 攻击,因为浏览器不会自动发送此类标头。
所以我假设为我目前正在测试的 ASP 应用程序推荐使用Authorization: Bearer tokens。由于浏览器本身不会发送此标头值,因此我假设这种方法可以解决 CSRF 问题。但后来我注意到一个堆栈溢出问题,这让我有点困惑。答案仍然建议使用 CSRF 令牌。
所以,基本上我有两个问题。
- 这种方法真的可以防止 CSRF 攻击吗?
- 我知道如果我容易受到 XSS 攻击,我的 cookie 可以被读取并且不记名令牌可以被盗。但是注入的 XSS 能否创建Authorization: Bearer标头并附加从 cookie 中窃取的值?