032 – 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.
Supported In
Essential: True
Advanced: True
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
Last updated
2024/01/26