In a secure web application, once a user logs in, the server usually issues a session token. This token is often stored in a cookie, localStorage, or passed as a bearer token. It is used to verify the user’s identity on future requests.
This vulnerability happens when the server fails to check if the session token is legitimate. This means:
Real-world Example: If an attacker creates or changes a session token and the server does not verify it against a trusted session store or signature, the attacker can bypass authentication and gain unauthorized access. This is a typical case of Broken Authentication and is a serious issue according to the OWASP Top 10.
To fix this issue effectively, developers need to use strict session token validation methods: