Session Fixation in tsolucio/corebos
Dec 7th 2021
Session Fixation is an attack that permits an attacker to hijack a valid user session. The attack explores a limitation in the way the web application manages the session ID, more specifically the vulnerable web application. When authenticating a user, it doesn't assign a new session ID, making it possible to use an existent session ID.
Proof of Concept
1. Load website in a new browser
2. Get cookie before login
3. Login to the website
4. Get cookie after login
Compare those 2 values
The login HTTP response contains
Set-cookie response to set a new cookie but that cookie is the same as one before login.
After logging in, the session is still with cookie
The attack consists of inducing a user to authenticate himself with a known session ID and then hijacking the user-validated session by the knowledge of the used session ID. The attacker has to provide a legitimate Web application session ID and try to make the victim's browser use it.
Web applications must ignore any session ID provided by the user's browser at login and must always generate a new session to which the user will log in if successfully authenticated.