XSS (Cross-Site Scripting) is an attack where malicious JavaScript is injected into your site and executed in victims' browsers—stealing cookies, session tokens, or performing actions as the user. Three types: Stored XSS (saved in database), Reflected XSS (in URL parameters), DOM XSS (client-side JavaScript). Prevent with input sanitization, output escaping, CSP, and secure templating.
Prevent XSS in every app that displays user-generated content (comments, profiles, forms, Markdown, rich text). Use framework-provided escaping (React auto-escapes, but dangerouslySetInnerHTML bypasses it). Sanitize HTML with DOMPurify, use CSP to block inline scripts, validate all input. Test with XSS payloads: <script>alert(1)</script>, <img src=x onerror=alert(1)>.
Cybersecurity
Stop malicious scripts from running