XSS Filter Evasion
Techniques used by attackers to bypass XSS filters and execute malicious scripts in a web browser.
Understanding XSS Filter Evasion
XSS (Cross-Site Scripting) filter evasion refers to techniques used by attackers to bypass security mechanisms that detect and block malicious scripts in web applications. Modern browsers and web security tools include XSS filters, but attackers continuously develop new ways to evade them.
Common XSS Filter Evasion Techniques
Encoding Payloads
Using HTML entities, URL encoding, or Base64 encoding to bypass filters.
Example:
<script>alert(1)</script>
instead of<script>alert(1)</script>
.
Breaking Up Keywords
Inserting characters to split blacklisted terms.
Example:
<scr
+ipt>alert(1)</scr
+ipt>
.
Using Alternative Script Events
Instead of
<script>
, using event handlers likeonerror
,onload
, oronclick
.Example:
<img src="x" onerror="alert(1)">
.
Injecting Inside Existing Elements
Modifying existing HTML elements to execute JavaScript.
Example:
<svg onload=alert(1)>
.
Bypassing Content Security Policy (CSP)
Using inline event handlers or JavaScript URLs to execute scripts.
Prevention and Mitigation Strategies
Implement Content Security Policy (CSP) to block inline scripts.
Use input validation and output encoding to neutralize harmful characters.
Prefer allowlisting over blacklisting to detect malicious inputs.
Disable dangerous HTML elements (e.g.,
<script>
,<iframe>
).