Evidence review
What to inspect before changing anything
Start with the delivered website and the real user journey. Record the current state so the team can distinguish an observed problem from an assumption and compare the same surface after deployment.
- 01Trace user-controlled data to rendered contexts
- 02Identify raw HTML and template escape bypasses
- 03Review URL construction and rich-text rendering
Implementation
A practical improvement plan
Make the smallest coherent change that solves the observed problem. Keep normal code review, accessibility, security and product checks in the loop instead of optimizing for the scan alone.
- 01Use framework-safe rendering defaults
- 02Sanitize intentionally allowed rich text
- 03Encode for the exact output context
Verification
How to verify the result
Verification should test the intended outcome and the most likely regression. Use the production delivery path whenever headers, caching, rendering or third-party services affect the result.
- 01Test representative payloads in every sink
- 02Inspect the resulting DOM rather than source alone
- 03Keep a regression suite for fixed injection paths
Common pitfall
A shortcut to avoid
Applying one generic sanitizer to every context creates false confidence and can still allow dangerous URL or script contexts.
Further reading
Primary guidance and references
These sources provide standards, security guidance or the interpretation framework used to keep this guide bounded. Product-specific implementation still requires review in the actual codebase.