Closed
Description
Summary
The CSRF tokens generated by Spring are vulnerable to a BREACH attack. More details at http://breachattack.com/
I'll create a pull request with a proposed code change to fix this.
Actual Behavior
Spring always returns the same CSRF token to the browser.
Expected Behavior
The simplest way to mitigate this would be to return a token which is composed of a random per secret request XORed with an internal CSRF token. This effectively means that the browser receives a new CSRF token with each request.
Configuration
This only occurs when you turn on CSRF protection in Spring and also have HTTP compression enabled somewhere in your web server stack.
Version
Currently exists in latest version in Git.
Sample
N/A