CWE-644: Improper Neutralization of HTTP Headers for… | Glexia
CWE-644 (Improper Neutralization of HTTP Headers for Scripting Syntax) weakness overview with consequences, detection methods, mitigations, related CVEs and MITRE…
Glexia's Take · Automated analysis
CWE-644: Improper Neutralization of HTTP Headers for Scripting Syntax
Improper Neutralization of HTTP Headers for Scripting Syntax represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.
Executive Impact
- Integrity Confidentiality Availability: Execute Unauthorized Code or Commands: Run arbitrary code.
- Confidentiality: Read Application Data: Attackers may be able to obtain sensitive information.
Developer Pattern
CWE-644 is the kind of defect developers can usually prevent with explicit validation, safer framework defaults, and tests that exercise hostile input or unsafe state transitions.
Automation confidence
high confidence from CWE-644, 4.20.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Official CWE Definition
CWE-644: Improper Neutralization of HTTP Headers for Scripting Syntax
The product does not neutralize or incorrectly neutralizes web scripting syntax in HTTP headers that can be used by web browser components that can process raw headers, such as Flash.
An attacker may be able to conduct cross-site scripting and other attacks against users who have these components enabled. If a product does not neutralize user controlled data being placed in the header of an HTTP response coming from the server, the header may contain a script that will get executed in the client's browser context, potentially resulting in a cross site scripting vulnerability or possibly an HTTP response splitting attack. It is important to carefully control data that is being placed both in HTTP response header and in the HTTP response body to ensure that no scripting syntax is present, taking various encodings into account.
Developer And Remediation Guidance
How teams prevent and detect this weakness
Causes
- In the following Java example, user-controlled data is added to the HTTP headers and returned to the client. Given that the data is not subject to neutralization, a malicious user may be able to inject dangerous scripting tags that will lead to script execution in the client browser.
Remediation
- Architecture and Design: Perform output validation in order to filter/escape/encode unsafe data that is being passed from the server in an HTTP response header.
- Architecture and Design: Disable script execution functionality in the clients' browser.
Detection
- Code review
- SAST
- DAST
- Focused regression tests
Mappings
Related CVEs, CWEs, and ATT&CK context
Related CWEs
ATT&CK Relevance
ATT&CK relevance is shown only when reviewed or responsibly inferred.
