CWE-707: Improper Neutralization
Description
The product does not ensure or incorrectly ensures that structured messages or data are well-formed and that certain security properties are met before being read from an upstream component or sent to a downstream component.
If a message is malformed, it may cause the message to be incorrectly interpreted. Neutralization is an abstract term for any technique that ensures that input (and output) conforms with expectations and is safe. This can be done by: checking that the input/output is already safe (e.g. validation) transformation of the input/output to be safe using techniques such as filtering, encoding/decoding, escaping/unescaping, quoting/unquoting, or canonicalization preventing the input/output from being directly provided by an attacker (e.g. indirect selection that maps externally-provided values to internally-controlled values) preventing the input/output from being processed at all This weakness typically applies in cases where the product prepares a control message that another process must act on, such as a command or query, and malicious input that was intended as data, can enter the control plane instead. However, this weakness also applies to more general cases where there are not always control implications.
- Abstraction
- PillarThe most abstract kind of weakness: a theme that groups classes.
- Likelihood of exploit
- Not rated by MITRE
- Status
- Incomplete
Common consequences
- Other
Other
Related weaknesses
Child weaknesses
- CWE-20Improper Input Validation
- CWE-74Improper Neutralization of Special Elements in Output Used by a Downstream Component ('Injection')
- CWE-116Improper Encoding or Escaping of Output
- CWE-138Improper Neutralization of Special Elements
- CWE-170Improper Null Termination
- CWE-172Encoding Error
- CWE-182Collapse of Data into Unsafe Value
- CWE-228Improper Handling of Syntactically Invalid Structure
- CWE-240Improper Handling of Inconsistent Structural Elements
- CWE-463Deletion of Data Structure Sentinel
- CWE-1426Improper Validation of Generative AI Output
CAPEC attack patterns that exploit it
- CAPEC-3Using Leading 'Ghost' Character Sequences to Bypass Input Filters
- CAPEC-7Blind SQL Injection
- CAPEC-43Exploiting Multiple Input Interpretation Layers
- CAPEC-52Embedding NULL Bytes
- CAPEC-53Postfix, Null Terminate, and Backslash
- CAPEC-64Using Slashes and URL Encoding Combined to Bypass Validation Logic
- CAPEC-78Using Escaped Slashes in Alternate Encoding
- CAPEC-79Using Slashes in Alternate Encoding
- CAPEC-83XPath Injection
- CAPEC-84XQuery Injection
- CAPEC-250XML Injection
- CAPEC-276Inter-component Protocol Manipulation
- CAPEC-277Data Interchange Protocol Manipulation
- CAPEC-278Web Services Protocol Manipulation
- CAPEC-279SOAP Manipulation
- CAPEC-468Generic Cross-Browser Cross-Domain Theft