logo
Home/CWEs/CWE-79/

CWE-79 - Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

  • Abstraction:Base
  • Structure:Simple
  • Status:Stable
  • Release Date:2006-07-19
  • Latest Modification Date:2025-04-03

Weakness Name

Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

Description

The product does not neutralize or incorrectly neutralizes user-controllable input before it is placed in output that is used as a web page that is served to other users.

There are many variants of cross-site scripting, characterized by a variety of terms or involving different attack topologies. However, they all indicate the same fundamental weakness: improper neutralization of dangerous input between the adversary and a victim.

Common Consequences

Scope: Access Control, Confidentiality

Impact: Bypass Protection Mechanism, Read Application Data

Notes: The most common attack performed with cross-site scripting involves the disclosure of private information stored in user cookies, such as session information. Typically, a malicious user will craft a client-side script, which -- when parsed by a web browser -- performs some activity on behalf of the victim to an attacker-controlled system (such as sending all site cookies to a given E-mail address). This could be especially dangerous to the site if the victim has administrator privileges to manage that site. This script will be loaded and run by each user visiting the web site. Since the site requesting to run the script has access to the cookies in question, the malicious script does also.

Scope: Integrity, Confidentiality, Availability

Impact: Execute Unauthorized Code or Commands

Notes: In some circumstances it may be possible to run arbitrary code on a victim's computer when cross-site scripting is combined with other flaws, for example, "drive-by hacking."

Scope: Confidentiality, Integrity, Availability, Access Control

Impact: Execute Unauthorized Code or Commands, Bypass Protection Mechanism, Read Application Data

Notes: The consequence of an XSS attack is the same regardless of whether it is stored or reflected. The difference is in how the payload arrives at the server. XSS can cause a variety of problems for the end user that range in severity from an annoyance to complete account compromise. Some cross-site scripting vulnerabilities can be exploited to manipulate or steal cookies, create requests that can be mistaken for those of a valid user, compromise confidential information, or execute malicious code on the end user systems for a variety of nefarious purposes. Other damaging attacks include the disclosure of end user files, installation of Trojan horse programs, redirecting the user to some other page or site, running "Active X" controls (under Microsoft Internet Explorer) from sites that a user perceives as trustworthy, and modifying presentation of content.

Related Weaknesses

CWE-74Improper Neutralization of Special Elements in Output Used by a Downstream Component ('Injection')High

CWE-352Cross-Site Request Forgery (CSRF)Medium

CWE-494Download of Code Without Integrity CheckMedium

Related Alerts

Cross Site Scripting (Persistent) - SpiderInformational

Cross Site Scripting (Persistent) - PrimeInformational

Cross Site Scripting (Reflected)High

Cross Site Scripting (DOM Based)High

Out of Band XSSHigh

Cross Site Scripting (Persistent)High