Description
The software generates an error message that includes sensitive information about its environment, users, or associated data.
Modes of Introduction:
– Architecture and Design
Likelihood of Exploit: High
Related Weaknesses
Consequences
Confidentiality: Read Application Data
Often this will either reveal sensitive information which may be used for a later attack or private information stored in the server.
Potential Mitigations
Phase: Implementation
Description:
Phase: Implementation
Description:
Handle exceptions internally and do not display errors containing potentially sensitive information to a user.
Phase: Implementation
Effectiveness: Defense in Depth
Description:
Use naming conventions and strong types to make it easier to spot when sensitive data is being used. When creating structures, objects, or other complex entities, separate the sensitive and non-sensitive data as much as possible.
This makes it easier to spot places in the code where data is being used that is unencrypted.
Phase: Implementation, Build and Compilation
Description:
Debugging information should not make its way into a production release.
Phase: Implementation, Build and Compilation
Description:
Debugging information should not make its way into a production release.
Phase: System Configuration
Description:
Where available, configure the environment to use less verbose error messages. For example, in PHP, disable the display_errors setting during configuration, or at runtime using the error_reporting() function.
Phase: System Configuration
Description:
Create default error pages or messages that do not leak any information.
CVE References
- CVE-2008-2049
- POP3 server reveals a password in an error message after multiple APOP commands are sent. Might be resultant from another weakness.
- CVE-2007-5172
- Program reveals password in error message if attacker can trigger certain database errors.
- CVE-2008-4638
- Composite: application running with high privileges (CWE-250) allows user to specify a restricted file to process, which generates a parsing error that leaks the contents of the file (CWE-209).
- CVE-2008-1579
- Existence of user names can be determined by requesting a nonexistent blog and reading the error message.
- CVE-2007-1409
- Direct request to library file in web application triggers pathname leak in error message.
- CVE-2008-3060
- Malformed input to login page causes leak of full path when IMAP call fails.
- CVE-2005-0603
- Malformed regexp syntax leads to information exposure in error message.
- CVE-2017-9615
- verbose logging stores admin credentials in a world-readablelog file
- CVE-2018-1999036
- SSH password for private key stored in build log
More Stories
The Most Dangerous Vulnerabilities in Apache Tomcat and How to Protect Against Them
Apache Tomcat is an open-source web server and servlet container that is widely used in enterprise environments to run Java...
ZDI-CAN-18333: A Critical Zero-Day Vulnerability in Microsoft Windows
Zero-day vulnerabilities are a serious threat to cybersecurity, as they can be exploited by malicious actors to gain unauthorized access...
CWE-669 – Incorrect Resource Transfer Between Spheres
Description The product does not properly transfer a resource/behavior to another sphere, or improperly imports a resource/behavior from another sphere,...
CWE-67 – Improper Handling of Windows Device Names
Description The software constructs pathnames from user input, but it does not handle or incorrectly handles a pathname containing a...
CWE-670 – Always-Incorrect Control Flow Implementation
Description The code contains a control flow path that does not reflect the algorithm that the path is intended to...
CWE-671 – Lack of Administrator Control over Security
Description The product uses security features in a way that prevents the product's administrator from tailoring security settings to reflect...