We have had a security test against our site, and a vulnerability has been identified.
Issue
If the session identifier were known by an attacker who had access to the user's workstation, the logged out session could be accessed using the session cookie after the user had terminated their session.
Recommendation
Ensure that session identifiers are correctly terminated on the server side when the logout function is invoked.
Code
The code currently does this (if a user clicks the "logout button")
FormsAuthentication.SignOut();
Roles.DeleteCookie();
Session.Clear();
I'm not sure how to check "ensure that session identifiers are correctly terminated on the server side when the logout function is invoked."
I've done some research and think I should I be doing this instead?
Session.Abandon();
If not, what should I be doing? (I'm not entirely sure how to test this...)