Background Details
Windows provides a large number of utility functions that manipulate buffers containing filenames. In most cases, the result is returned in a buffer that is passed in as input. (Usually the filename is modified in place.) Most functions require the buffer to be at least MAX_PATH bytes in length, but you should check the documentation for each function individually. If the buffer is not large enough to store the result of the manipulation, a buffer overflow can occur.
Modes Of Introduction
Implementation
Applicable Platforms
Language
Name: C (Undetermined)
Name: C++ (Undetermined)
Common Consequences
Scope |
Impact |
Likelihood |
Integrity Confidentiality Availability | Modify Memory, Execute Unauthorized Code or Commands, DoS: Crash, Exit, or Restart | |
Potential Mitigations
Phases : Implementation
Always specify output buffers large enough to handle the maximum-size possible result from path manipulation functions.
Vulnerability Mapping Notes
Justification : 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.
Comment : 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.
NotesNotes
This entry is at a much lower level of abstraction than most entries because it is function-specific. It also has significant overlap with other entries that can vary depending on the perspective. For example, incorrect usage could trigger either a stack-based overflow (CWE-121) or a heap-based overflow (CWE-122). The CWE team has not decided how to handle such entries.
References
REF-6
Seven Pernicious Kingdoms: A Taxonomy of Software Security Errors
Katrina Tsipenyuk, Brian Chess, Gary McGraw.
https://samate.nist.gov/SSATTM_Content/papers/Seven%20Pernicious%20Kingdoms%20-%20Taxonomy%20of%20Sw%20Security%20Errors%20-%20Tsipenyuk%20-%20Chess%20-%20McGraw.pdf
Submission
Name |
Organization |
Date |
Date release |
Version |
7 Pernicious Kingdoms |
|
2009-07-27 +00:00 |
2009-07-27 +00:00 |
1.5 |
Modifications
Name |
Organization |
Date |
Comment |
Eric Dalci |
Cigital |
2008-07-01 +00:00 |
updated Time_of_Introduction |
|
KDM Analytics |
2008-08-01 +00:00 |
added/updated white box definitions |
CWE Content Team |
MITRE |
2008-09-08 +00:00 |
updated Applicable_Platforms, Relationships, Other_Notes, Taxonomy_Mappings |
CWE Content Team |
MITRE |
2009-05-27 +00:00 |
updated Demonstrative_Examples |
KDM Analytics |
|
2009-07-17 +00:00 |
Improved the White_Box_Definition |
CWE Content Team |
MITRE |
2011-06-01 +00:00 |
updated Common_Consequences |
CWE Content Team |
MITRE |
2012-05-11 +00:00 |
updated Relationships |
CWE Content Team |
MITRE |
2014-07-30 +00:00 |
updated Relationships, Taxonomy_Mappings |
CWE Content Team |
MITRE |
2017-11-08 +00:00 |
updated Affected_Resources, Demonstrative_Examples, Relationships, White_Box_Definitions |
CWE Content Team |
MITRE |
2020-02-24 +00:00 |
updated References, Relationships |
CWE Content Team |
MITRE |
2021-03-15 +00:00 |
updated Maintenance_Notes |
CWE Content Team |
MITRE |
2023-01-31 +00:00 |
updated Description |
CWE Content Team |
MITRE |
2023-04-27 +00:00 |
updated Relationships |
CWE Content Team |
MITRE |
2023-06-29 +00:00 |
updated Mapping_Notes |