CWE-7
Weakness AllowedJ2EE Misconfiguration: Missing Custom Error Page
Abstraction: Variant · Status: Incomplete
The product has a J2EE component that does not have a custom error page.
Mapping guidance
This CWE entry is at the Variant level of abstraction, which is a preferred level of abstraction for mapping to the root causes of vulnerabilities.
Carefully read both the name and description to ensure that this mapping is an appropriate fit. Do not try to 'force' a mapping to a lower-level Base/Variant simply to comply with this preferred level of abstraction.
Modes of introduction
Without a custom error page, J2EE may serve a default error page that includes potentially sensitive information.
Detection methods
Automated Static Analysis
Automated static analysis, commonly referred to as Static Application Security Testing (SAST), can find some instances of this weakness by analyzing source code (or binary/compiled code) without having to execute it. Typically, this is done by building a model of data flow and control flow, then searching for potentially-vulnerable patterns that connect "sources" (origins of input) with "sinks" (destinations where the data interacts with external components, a lower layer such as the OS, etc.)
Content history
added/updated demonstrative examples
updated Time_of_Introduction
updated Relationships, Other_Notes, Taxonomy_Mappings
updated Description
updated Name, Relationships
updated Common_Consequences
updated Demonstrative_Examples, Relationships
updated Potential_Mitigations
updated Common_Consequences, Description, Other_Notes, Potential_Mitigations
updated Relationships
updated References
updated References, Relationships
updated Description
updated Relationships, Time_of_Introduction
updated Mapping_Notes
updated Applicable_Platforms, Weakness_Ordinalities
updated Common_Consequences, Description, Detection_Factors, Modes_of_Introduction, Potential_Mitigations, References
0 vulnerabilities reference this CWE, most recent first.
No vulnerabilities reference this CWE.
Mitigation
Handle exceptions appropriately in source code. Catch java.lang.Throwable exceptions to prevent attackers from mining information from the application container's built-in error response.
Mitigation
Always define appropriate error pages, including for 4xx errors (e.g. 404) and 5xx (e.g. 500) errors. 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.
Mitigation
Do not attempt to process an error or attempt to mask it.
Mitigation
Verify return values are correct and do not supply sensitive information about the system.
No CAPEC attack patterns related to this CWE.