CWE-644: Improper Neutralization of HTTP Headers for Scripting Syntax
Weakness ID: 644
The application 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 an application 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.
Time of Introduction
Architecture and Design
Technical Impact: Execute unauthorized code or
Run arbitrary code.
Technical Impact: Read application
Attackers may be able to obtain sensitive information.
Likelihood of Exploit
Enabling Factors for Exploitation
Script execution functionality is enabled in the user's browser.
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