| Impact | Details |
|---|---|
|
Read Application Data |
Scope: Confidentiality
Logging sensitive user data, full path names, or system information often provides attackers with an additional, less-protected path to acquiring the information.
|
| Phase(s) | Mitigation |
|---|---|
|
Architecture and Design; Implementation |
Consider seriously the sensitivity of the information written into log files. Do not write secrets into the log files.
|
|
Distribution |
Remove debug log files before deploying the application into production.
|
|
Operation |
Protect log files against unauthorized read/write.
|
|
Implementation |
Adjust configurations appropriately when software is transitioned from a debug state to production.
|
| Nature | Type | ID | Name |
|---|---|---|---|
| ChildOf | Base Base - a weakness that is still mostly independent of a resource or technology, but with sufficient details to provide specific methods for detection and prevention. Base level weaknesses typically describe issues in terms of 2 or 3 of the following dimensions: behavior, property, technology, language, and resource. | 538 | Insertion of Sensitive Information into Externally-Accessible File or Directory |
| Nature | Type | ID | Name |
|---|---|---|---|
| ChildOf | Class Class - a weakness that is described in a very abstract fashion, typically independent of any specific language or technology. More specific than a Pillar Weakness, but more general than a Base Weakness. Class level weaknesses typically describe issues in terms of 1 or 2 of the following dimensions: behavior, property, and resource. | 200 | Exposure of Sensitive Information to an Unauthorized Actor |
| Nature | Type | ID | Name |
|---|---|---|---|
| MemberOf | Category Category - a CWE entry that contains a set of other entries that share a common characteristic. | 1009 | Audit |
| Phase | Note |
|---|---|
| Architecture and Design | COMMISSION: This weakness refers to an incorrect design related to an architectural security tactic. |
| Implementation | |
| Operation |
Example 1
In the following code snippet, a user's full name and credit card number are written to a log file.
Example 2
This code stores location information about the current user:
When the application encounters an exception it will write the user object to the log. Because the user object contains location information, the user's location is also written to the log.
Example 3
In the example below, the method getUserBankAccount retrieves a bank account object from a database using the supplied username and account number to query the database. If an SQLException is raised when querying the database, an error message is created and output to a log file.
The error message that is created includes information about the database query that may contain sensitive information about the database or query logic. In this case, the error message will expose the table name and column names used in the database. This data could be used to simplify other attacks, such as SQL injection (CWE-89) to directly access the database.
Note: this is a curated list of examples for users to understand the variety of ways in which this weakness can be introduced. It is not a complete list of all CVEs that are related to this CWE entry.
| Reference | Description |
|---|---|
|
verbose logging stores admin credentials in a world-readable log file
|
|
|
SSH password for private key stored in build log
|
| Method | Details |
|---|---|
|
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.)
Effectiveness: High |
| Nature | Type | ID | Name |
|---|---|---|---|
| MemberOf | CategoryCategory - a CWE entry that contains a set of other entries that share a common characteristic. | 731 | OWASP Top Ten 2004 Category A10 - Insecure Configuration Management |
| MemberOf | CategoryCategory - a CWE entry that contains a set of other entries that share a common characteristic. | 857 | The CERT Oracle Secure Coding Standard for Java (2011) Chapter 14 - Input Output (FIO) |
| MemberOf | CategoryCategory - a CWE entry that contains a set of other entries that share a common characteristic. | 963 | SFP Secondary Cluster: Exposed Data |
| MemberOf | CategoryCategory - a CWE entry that contains a set of other entries that share a common characteristic. | 1147 | SEI CERT Oracle Secure Coding Standard for Java - Guidelines 13. Input Output (FIO) |
| MemberOf | CategoryCategory - a CWE entry that contains a set of other entries that share a common characteristic. | 1355 | OWASP Top Ten 2021 Category A09:2021 - Security Logging and Monitoring Failures |
| MemberOf | CategoryCategory - a CWE entry that contains a set of other entries that share a common characteristic. | 1417 | Comprehensive Categorization: Sensitive Information Exposure |
Rationale
This CWE entry is at the Base level of abstraction, which is a preferred level of abstraction for mapping to the root causes of vulnerabilities.Comments
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.| Mapped Taxonomy Name | Node ID | Fit | Mapped Node Name |
|---|---|---|---|
| The CERT Oracle Secure Coding Standard for Java (2011) | FIO13-J | Do not log sensitive information outside a trust boundary | |
| Software Fault Patterns | SFP23 | Exposed Data |
| CAPEC-ID | Attack Pattern Name |
|---|---|
| CAPEC-215 | Fuzzing for application mapping |
| Submissions | |||
|---|---|---|---|
| Submission Date | Submitter | Organization | |
|
2006年07月19日
(CWE Draft 3, 2006年07月19日) |
Anonymous Tool Vendor (under NDA) | ||
| Contributions | |||
| Contribution Date | Contributor | Organization | |
| 2009年07月15日 | Fortify Software | ||
| Portions of Mitigations, Consequences and Description derived from content submitted by Fortify Software. | |||
|
2024年10月14日
(CWE 4.16, 2024年11月19日) |
Abhi Balakrishnan | ||
| Provided diagram to improve CWE usability | |||
| Modifications | |||
| Modification Date | Modifier | Organization | |
|
2024年11月19日
(CWE 4.16, 2024年11月19日) |
CWE Content Team | MITRE | |
| updated Common_Consequences, Description, Diagram | |||
| 2023年10月26日 | CWE Content Team | MITRE | |
| updated Demonstrative_Examples, Observed_Examples | |||
| 2023年06月29日 | CWE Content Team | MITRE | |
| updated Mapping_Notes | |||
| 2023年04月27日 | CWE Content Team | MITRE | |
| updated Detection_Factors, Relationships | |||
| 2021年10月28日 | CWE Content Team | MITRE | |
| updated Relationships | |||
| 2020年02月24日 | CWE Content Team | MITRE | |
| updated Name, Relationships, Type | |||
| 2019年09月19日 | CWE Content Team | MITRE | |
| updated Demonstrative_Examples, Observed_Examples | |||
| 2019年06月20日 | CWE Content Team | MITRE | |
| updated Name, Relationships | |||
| 2019年01月03日 | CWE Content Team | MITRE | |
| updated Relationships, Taxonomy_Mappings | |||
| 2018年03月27日 | CWE Content Team | MITRE | |
| updated Description, Potential_Mitigations, Relationships | |||
| 2017年11月08日 | CWE Content Team | MITRE | |
| updated Modes_of_Introduction, Relationships, Taxonomy_Mappings | |||
| 2015年12月07日 | CWE Content Team | MITRE | |
| updated Relationships | |||
| 2014年07月30日 | CWE Content Team | MITRE | |
| updated Relationships, Taxonomy_Mappings | |||
| 2014年02月18日 | CWE Content Team | MITRE | |
| updated Demonstrative_Examples | |||
| 2012年05月11日 | CWE Content Team | MITRE | |
| updated Related_Attack_Patterns, Relationships, Taxonomy_Mappings | |||
| 2011年06月01日 | CWE Content Team | MITRE | |
| updated Common_Consequences, Relationships, Taxonomy_Mappings | |||
| 2011年03月29日 | CWE Content Team | MITRE | |
| updated Name | |||
| 2009年07月27日 | CWE Content Team | MITRE | |
| updated Common_Consequences, Description, Likelihood_of_Exploit, Potential_Mitigations | |||
| 2009年03月10日 | CWE Content Team | MITRE | |
| updated Relationships | |||
| 2008年09月08日 | CWE Content Team | MITRE | |
| updated Relationships, Taxonomy_Mappings | |||
| 2008年07月01日 | Eric Dalci | Cigital | |
| updated Potential_Mitigations, Time_of_Introduction | |||
| 2008年07月01日 | Sean Eidemiller | Cigital | |
| added/updated demonstrative examples | |||
| Previous Entry Names | |||
| Change Date | Previous Entry Name | ||
| 2011年03月29日 | Information Leak Through Log Files | ||
| 2019年06月20日 | Information Exposure Through Log Files | ||
| 2020年02月24日 | Inclusion of Sensitive Information in Log Files | ||
Use of the Common Weakness Enumeration (CWE™) and the associated references from this website are subject to the Terms of Use. CWE is sponsored by the U.S. Department of Homeland Security (DHS) Cybersecurity and Infrastructure Security Agency (CISA) and managed by the Homeland Security Systems Engineering and Development Institute (HSSEDI) which is operated by The MITRE Corporation (MITRE). Copyright © 2006–2025, The MITRE Corporation. CWE, CWSS, CWRAF, and the CWE logo are trademarks of The MITRE Corporation.