Skip to content

Cross-Site Scripting (XSS) via Unencoded User Input

Description

The application is vulnerable to Cross-Site Scripting (XSS) attacks due to unencoded user input being displayed. This can lead to malicious scripts being executed on the client-side, potentially resulting in unauthorized access, data theft, or other security breaches.

Examples

Insecure Code

c#
Response.Write(Request.QueryString["name"]);

Secure Code

c#
Response.Write(System.Text.Encodings.Web.HtmlEncoder.Default.Encode(Request.QueryString["name"]));

Remediation

Use built-in framework capabilities for automatically encoding user input, such as System.Text.Encodings.Web encoders (HtmlEncoder, JavaScriptEncoder, UrlEncoder), depending on the output context.

Rule Details

FieldValue
IDCODE-0459
CategoryWeb
SeverityMEDIUM
CWECWE-79
ConfidenceHIGH
ImpactHIGH
LikelihoodMEDIUM
ExploitabilityEASY
TagsXSS, Cross-Site Scripting, User Input Validation
OWASPA1:2017-Injection, A03:2021-Injection