Avoid session ID leakages
Summary
The system must not expose session IDs in URLs and messages presented to the user.
Description
Session IDs are sensitive information that may allow an attacker to steal, modify and/or destroy information once they obtain one. Information sent via URL parameters is: - Stored in clear text in the browser history. - Sent to external sites via the referrer HTTP header. - Sent to external sites via the search bar if the browser interprets the URL as a query. - Visible to scripts running on the browser that may belong to third-parties. Therefore, session IDs should not be sent via URL parameters, nor be displayed as messages presented to the user, nor stored in logs.
References
- CWE-200. Exposure of sensitive information to an unauthorized actor
- OWASP10-A2. Cryptographic failures
- OWASP10-A3. Injection
- OWASPM10-M2. Insecure data storage
- CERTJ-IDS14-J. Do not trust the contents of hidden form fields
- PADSS-5_2_10. Broken authentication and session management
- HITRUST-09_v. Electronic messaging
- WASSEC-6_2_2_2. Authorization - Insufficient authorization
- NISTSSDF-PW_1_1. Design software to meet security requirements and mitigate security risks
- ISSAF-T_14_1. Web application assessment - URL manipulation
- PTES-7_4_4_2. Post Exploitation - Pillaging (user information on web browsers)
- OWASPSCP-3. Authentication and password management
- CWE-6. Misconfiguration - Insufficient session-ID length
- OWASPAPI-API3. Broken Object Property Level Authorization
Weaknesses
Search for vulnerabilities in your apps for free with Fluid Attacks' automated security testing! Start your 21-day free trial and discover the benefits of the Continuous Hacking Essential plan.If you prefer the Advanced plan, which includes the expertise of Fluid Attacks' hacking team, fill out this contact form.
Supported In
This requirement is verified in following services
Essential Plan
Advanced Plan