CWE-692: Incomplete Denylist to Cross-Site Scripting

CompoundDraft

The product uses a denylist-based protection mechanism to defend against XSS attacks, but the denylist is incomplete, allowing XSS variants to succeed.

View on MITRE
Back to CWE Lookup

Extended Description

While XSS might seem simple to prevent, web browsers vary so widely in how they parse web pages, that a denylist cannot keep track of all the variations. The "XSS Cheat Sheet" [REF-714] contains a large number of attacks that are intended to bypass incomplete denylists.

Technical Details

Structure
Chain

Applicable To

Languages
Not Language-Specific
Platforms

Frequently Asked Questions

What is CWE-692: Incomplete Denylist to Cross-Site Scripting?+

CWE-692: Incomplete Denylist to Cross-Site Scripting is a Common Weakness Enumeration (CWE) entry maintained by MITRE. The product uses a denylist-based protection mechanism to defend against XSS attacks, but the denylist is incomplete, allowing XSS variants to succeed. While XSS might seem simple to prevent, web browsers vary so widely in how they parse web pages, that a denylist cannot keep track of all the variations. The "XSS Cheat Sheet" [REF-714] contains a large number of attacks that are intended to bypass incomplete denylists.

What are the security consequences of Incomplete Denylist to Cross-Site Scripting?+

If exploited, CWE-692 (Incomplete Denylist to Cross-Site Scripting) it can compromise Confidentiality, Integrity and Availability, leading to outcomes such as Execute Unauthorized Code or Commands.

Which programming languages are affected by Incomplete Denylist to Cross-Site Scripting?+

CWE-692 commonly affects Not Language-Specific. Note that weaknesses are often language-agnostic patterns, so secure coding practices apply broadly.

What are real-world examples of Incomplete Denylist to Cross-Site Scripting?+

MITRE documents real CVEs mapped to CWE-692, including CVE-2007-5727, CVE-2006-3617 and CVE-2006-4308. You can look up the full details of each CVE, including CVSS scores and remediation guidance, on our CVE Lookup tool.

What is the difference between a CWE and a CVE?+

A CWE (Common Weakness Enumeration) like CWE-692 describes a category of software weakness — the underlying flaw type. A CVE (Common Vulnerabilities and Exposures) identifies a specific, real-world vulnerability in a particular product. In short, a CWE is the kind of mistake, and a CVE is an instance of that mistake being found in software.

Learn More