Where to start
Ordered by actual difficulty. At the same level: isolated lab first, then the guided room, and the full machine last.- PortSwigger β DOM XSS in document.write sink using source location.search (Apprentice) Β· π¬π§
- PortSwigger β DOM XSS in innerHTML sink using source location.search (Apprentice) Β· π¬π§
- PortSwigger β DOM XSS in jQuery anchor href attribute sink using location.search source (Apprentice) Β· π¬π§ πΉ
- PortSwigger β DOM XSS in jQuery selector sink using a hashchange event (Apprentice) Β· π¬π§
- PortSwigger β Exploiting DOM clobbering to enable XSS (Apprentice) Β· π¬π§
- PortSwigger β Reflected XSS in a JavaScript URL with some characters blocked (Apprentice) Β· π¬π§
Curated resources
HTB machines practicing Cross-Site Scripting (XSS) (13)
PortSwigger labs practicing Cross-Site Scripting (XSS) (36)
TryHackMe rooms practicing Cross-Site Scripting (XSS) (10)
Related skills
β Back to the full glossary Last updated: 2026-08-17