Description
The default error page of a web application should not display sensitive information about the software system.
Modes of Introduction:
– Architecture and Design
Likelihood of Exploit:
Related Weaknesses
Consequences
Confidentiality: Read Application Data
A stack trace might show the attacker a malformed SQL query string, the type of database being used, and the version of the application container. This information enables the attacker to target known vulnerabilities in these components.
Potential Mitigations
Phase: Implementation
Effectiveness:
Description:
Handle exceptions appropriately in source code.
Phase: Implementation, System Configuration
Effectiveness:
Description:
Always define appropriate error pages. The application configuration should specify a default error page in order to guarantee that the application will never leak error messages to an attacker. Handling standard HTTP error codes is useful and user-friendly in addition to being a good security practice, and a good configuration will also define a last-chance error handler that catches any exception that could possibly be thrown by the application.
Phase: Implementation
Effectiveness:
Description:
Do not attempt to process an error or attempt to mask it.
Phase: Implementation
Effectiveness:
Description:
Verify return values are correct and do not supply sensitive information about the system.
CVE References