加密令牌模式 CSRF 保护是否不受 BREACH 攻击?

Is Encrypted Token Pattern CSRF protection immune to BREACH attack?

OWASP's Encrypted Token Pattern is a CSRF protection solution, where the token value is a function of time. Would this mean that Encrypted Token Pattern has a built in BREACH attack保护?

通常不会,因为在大多数实现中,每次身份验证(即有人登录时)只会生成一次令牌。 It is still generally recommended 每个 session.

只生成一次 CSRF 令牌

一旦 CSRF 令牌被 BREACH 攻击取回,它就可以用于 session 中的后续请求。值是否加密并不重要,因为只需要密文本身。

但是,作为 BREACH 的缓解措施,您可以在每次请求时重新生成令牌。

There are some other mitigations here。我最喜欢的一个是在 referer header 与您的域不匹配或为空时禁用 HTTP 压缩,因为这不会破坏系统的任何功能。对于高安全性系统,最好完全禁用 HTTPS 请求的 HTTP 压缩,因为理论上可以确定可重复响应的任何部分。