This Pillar covers several possibilities:
| Impact | Details |
|---|---|
|
Varies by Context |
Scope: Other |
| Nature | Type | ID | Name |
|---|---|---|---|
| MemberOf | View View - a subset of CWE entries that provides a way of examining CWE content. The two main view structures are Slices (flat lists) and Graphs (containing relationships between entries). | 1000 | Research Concepts |
| ParentOf | 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. | 183 | Permissive List of Allowed Inputs |
| ParentOf | 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. | 185 | Incorrect Regular Expression |
| ParentOf | Variant Variant - a weakness that is linked to a certain type of product, typically involving a specific language or technology. More specific than a Base weakness. Variant level weaknesses typically describe issues in terms of 3 to 5 of the following dimensions: behavior, property, technology, language, and resource. | 581 | Object Model Violation: Just One of Equals and Hashcode Defined |
| ParentOf | 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. | 1023 | Incomplete Comparison with Missing Factors |
| ParentOf | 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. | 1024 | Comparison of Incompatible Types |
| ParentOf | 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. | 1025 | Comparison Using Wrong Factors |
| ParentOf | 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. | 1039 | Inadequate Detection or Handling of Adversarial Input Perturbations in Automated Recognition Mechanism |
| ParentOf | Variant Variant - a weakness that is linked to a certain type of product, typically involving a specific language or technology. More specific than a Base weakness. Variant level weaknesses typically describe issues in terms of 3 to 5 of the following dimensions: behavior, property, technology, language, and resource. | 1077 | Floating Point Comparison with Incorrect Operator |
| ParentOf | 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. | 1254 | Incorrect Comparison Logic Granularity |
| CanFollow | Variant Variant - a weakness that is linked to a certain type of product, typically involving a specific language or technology. More specific than a Base weakness. Variant level weaknesses typically describe issues in terms of 3 to 5 of the following dimensions: behavior, property, technology, language, and resource. | 481 | Assigning instead of Comparing |
| Nature | Type | ID | Name |
|---|---|---|---|
| MemberOf | View View - a subset of CWE entries that provides a way of examining CWE content. The two main view structures are Slices (flat lists) and Graphs (containing relationships between entries). | 1003 | Weaknesses for Simplified Mapping of Published Vulnerabilities |
| Phase | Note |
|---|---|
| Implementation |
Class: Not Language-Specific (Undetermined Prevalence)
Class: Not Technology-Specific (Undetermined Prevalence)
Example 1
Consider an application in which Truck objects are defined to be the same if they have the same make, the same model, and were manufactured in the same year.
Here, the equals() method only checks the make and model of the Truck objects, but the year of manufacture is not included.
Example 2
This example defines a fixed username and password. The AuthenticateUser() function is intended to accept a username and a password from an untrusted user, and check to ensure that it matches the username and password. If the username and password match, AuthenticateUser() is intended to indicate that authentication succeeded.
In AuthenticateUser(), the strncmp() call uses the string length of an attacker-provided inPass parameter in order to determine how many characters to check in the password. So, if the attacker only provides a password of length 1, the check will only examine the first byte of the application's password before determining success.
As a result, this partial comparison leads to improper authentication (CWE-287).
Any of these passwords would still cause authentication to succeed for the "admin" user:
This significantly reduces the search space for an attacker, making brute force attacks more feasible.
The same problem also applies to the username, so values such as "a" and "adm" will succeed for the username.
While this demonstrative example may not seem realistic, see the Observed Examples for CVE entries that effectively reflect this same weakness.
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 |
|---|---|
|
Proxy performs incorrect comparison of request headers, leading to infoleak
|
| Ordinality | Description |
|---|---|
|
Primary
|
(where the weakness exists independent of other weaknesses)
|
| Nature | Type | ID | Name |
|---|---|---|---|
| MemberOf | CategoryCategory - a CWE entry that contains a set of other entries that share a common characteristic. | 747 | CERT C Secure Coding Standard (2008) Chapter 14 - Miscellaneous (MSC) |
| MemberOf | CategoryCategory - a CWE entry that contains a set of other entries that share a common characteristic. | 883 | CERT C++ Secure Coding Section 49 - Miscellaneous (MSC) |
| MemberOf | CategoryCategory - a CWE entry that contains a set of other entries that share a common characteristic. | 977 | SFP Secondary Cluster: Design |
| MemberOf | CategoryCategory - a CWE entry that contains a set of other entries that share a common characteristic. | 1140 | SEI CERT Oracle Secure Coding Standard for Java - Guidelines 06. Methods (MET) |
| MemberOf | CategoryCategory - a CWE entry that contains a set of other entries that share a common characteristic. | 1397 | Comprehensive Categorization: Comparison |
Rationale
This CWE entry is extremely high-level, a Pillar. However, sometimes this weakness is forced to be used due to the lack of in-depth weakness research. See Research Gaps.Comments
Where feasible, consider children or descendants of this entry instead.Research Gap
Weaknesses related to this Pillar appear to be under-studied, especially with respect to classification schemes. Input from academic and other communities could help identify and resolve gaps or organizational difficulties within CWE.
Maintenance
| CAPEC-ID | Attack Pattern Name |
|---|---|
| CAPEC-10 | Buffer Overflow via Environment Variables |
| CAPEC-120 | Double Encoding |
| CAPEC-14 | Client-side Injection-induced Buffer Overflow |
| CAPEC-15 | Command Delimiters |
| CAPEC-182 | Flash Injection |
| CAPEC-24 | Filter Failure through Buffer Overflow |
| CAPEC-267 | Leverage Alternate Encoding |
| CAPEC-3 | Using Leading 'Ghost' Character Sequences to Bypass Input Filters |
| CAPEC-41 | Using Meta-characters in E-mail Headers to Inject Malicious Payloads |
| CAPEC-43 | Exploiting Multiple Input Interpretation Layers |
| CAPEC-44 | Overflow Binary Resource File |
| CAPEC-45 | Buffer Overflow via Symbolic Links |
| CAPEC-46 | Overflow Variables and Tags |
| CAPEC-47 | Buffer Overflow via Parameter Expansion |
| CAPEC-52 | Embedding NULL Bytes |
| CAPEC-53 | Postfix, Null Terminate, and Backslash |
| CAPEC-6 | Argument Injection |
| CAPEC-64 | Using Slashes and URL Encoding Combined to Bypass Validation Logic |
| CAPEC-67 | String Format Overflow in syslog() |
| CAPEC-7 | Blind SQL Injection |
| CAPEC-71 | Using Unicode Encoding to Bypass Validation Logic |
| CAPEC-73 | User-Controlled Filename |
| CAPEC-78 | Using Escaped Slashes in Alternate Encoding |
| CAPEC-79 | Using Slashes in Alternate Encoding |
| CAPEC-8 | Buffer Overflow in an API Call |
| CAPEC-80 | Using UTF-8 Encoding to Bypass Validation Logic |
| CAPEC-88 | OS Command Injection |
| CAPEC-9 | Buffer Overflow in Local Command-Line Utilities |
| CAPEC-92 | Forced Integer Overflow |
| Submissions | |||
|---|---|---|---|
| Submission Date | Submitter | Organization | |
|
2008年09月09日
(CWE 1.0, 2008年09月09日) |
CWE Content Team | MITRE | |
| Modifications | |||
| Modification Date | Modifier | Organization | |
| 2023年06月29日 | CWE Content Team | MITRE | |
| updated Mapping_Notes, Research_Gaps | |||
| 2023年04月27日 | CWE Content Team | MITRE | |
| updated Relationships | |||
| 2023年01月31日 | CWE Content Team | MITRE | |
| updated Description, Observed_Examples | |||
| 2022年06月28日 | CWE Content Team | MITRE | |
| updated Observed_Examples | |||
| 2022年04月28日 | CWE Content Team | MITRE | |
| updated Related_Attack_Patterns | |||
| 2020年08月20日 | CWE Content Team | MITRE | |
| updated Related_Attack_Patterns | |||
| 2020年06月25日 | CWE Content Team | MITRE | |
| updated Relationships | |||
| 2020年02月24日 | CWE Content Team | MITRE | |
| updated Applicable_Platforms, Relationships, Type | |||
| 2019年09月19日 | CWE Content Team | MITRE | |
| updated Relationships | |||
| 2019年06月20日 | CWE Content Team | MITRE | |
| updated Related_Attack_Patterns | |||
| 2019年01月03日 | CWE Content Team | MITRE | |
| updated Related_Attack_Patterns, Relationships | |||
| 2018年03月27日 | CWE Content Team | MITRE | |
| updated Common_Consequences, Demonstrative_Examples, Description, Maintenance_Notes, Name, Observed_Examples, Relationships | |||
| 2017年11月08日 | CWE Content Team | MITRE | |
| updated Taxonomy_Mappings | |||
| 2017年05月03日 | CWE Content Team | MITRE | |
| updated Related_Attack_Patterns | |||
| 2014年07月30日 | CWE Content Team | MITRE | |
| updated Relationships | |||
| 2012年05月11日 | CWE Content Team | MITRE | |
| updated Related_Attack_Patterns, Relationships | |||
| 2011年09月13日 | CWE Content Team | MITRE | |
| updated Relationships, Taxonomy_Mappings | |||
| 2011年06月01日 | CWE Content Team | MITRE | |
| updated Common_Consequences | |||
| 2011年03月29日 | CWE Content Team | MITRE | |
| updated Description | |||
| 2009年05月27日 | CWE Content Team | MITRE | |
| updated Description | |||
| 2009年03月10日 | CWE Content Team | MITRE | |
| updated Related_Attack_Patterns | |||
| 2008年11月24日 | CWE Content Team | MITRE | |
| updated Relationships, Taxonomy_Mappings | |||
| Previous Entry Names | |||
| Change Date | Previous Entry Name | ||
| 2018年03月27日 | Insufficient Comparison | ||
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.