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