Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 25 additions & 0 deletions data/quests.json
Original file line number Diff line number Diff line change
Expand Up @@ -995,6 +995,31 @@
],
"difficulty": "Hard",
"status": "live"
},
{
"id": "xss-defender",
"name": "XSS Defender",
"shortDescription": "Interactive web security quest game teaching Cross-Site Scripting (XSS) prevention, HTML sanitization, and Content Security Policy (CSP) headers.",
"longDescription": "## XSS Defender\n\nAn interactive web security quest game that teaches Cross-Site Scripting (XSS) prevention, HTML sanitizer policies (DOMPurify / HTML Sanitizer API), and Content Security Policy (CSP) directive configurations.\n\n### Features\n\n- Interactive XSS Attack Simulator: Live rendering of attack payloads in an isolated preview sandbox\n- Progressive Security Levels: Level-based scenarios covering Reflected XSS entity encoding, DOM sanitization policies, CSP headers, and event handler attribute injections\n- Real-Time Vulnerability Analyzer: Live feedback indicating whether script execution was blocked or succeeded\n- Web Audio Synthesizer SFX: Audio feedback for firewall alerts, sanitization shield activations, and level completion fanfares\n- Built-In Web Security Manual: Cheatsheet covering XSS prevention guidelines and CSP directive syntax",
"category": "js-fundamentals",
"tags": [
"csp",
"dompurify",
"game",
"quest",
"sanitizer",
"security",
"web-security",
"xss"
],
"techStack": [
"CSS3",
"HTML5",
"Vanilla JS",
"Web Audio API"
],
"difficulty": "Medium",
"status": "live"
}
]
}
Loading
Loading