I have an application that uses spring security and CAS (spring 3.0.5, cas 3.4.5), but when I register the session identifier, it does not change.
When I register, the CasAuthenticationFilter authenticates, and if the authentication is successful, it does not continue the filter chain, instead sets the authentication to the SecurityContextHolder and calls successHandler. This redirects to the source URL to which I requested the required authentication. SessionManagementFilter never gets cracks causing a session strategy to create a new session.
It seems like AbstractAuthenticationFilter , that CasAuthenticationFilter extends has its own session strategy, but by default it is NullAuthenticatedSessionStrategy , which is vulnerable to session fixation. The question is, why is the default strategy vulnerable when spring claims to prevent the default session from committing ?
What is the best resolution to fix this?
source share