The PurpleDuel labs
A PurpleDuel lab is a small invented machine that you explore from a simulated terminal in your browser: files, network services and websites are game data, and no command ever reaches a real computer. Each lab has a task, a few objectives that tick themselves off as you work and a flag to find; when the flag shows up in the terminal, the lab is solved.
There are 39 of them, split into 6 learning paths and ordered from easiest to hardest: each one unlocks once you have solved the labs it builds on, even from other paths. Every lab ends with a write-up that explains what went wrong and, above all, how to defend against it.
How a lab works
- Read the task: it tells you where you are and what to look for, without giving away the way.
- Explore with shell commands: objectives tick themselves off when you take the right step, and each one is worth experience points.
- If you get stuck, ask for a hint: the first one is free, the others cost a little XP.
- The flag appears in the terminal only once you have done all the work: the lab closes there and the write-up with the defensive lesson opens.
The learning paths
Linux Fundamentals
Shell, files, filters, permissions · 9 labs
- First steps in the shell (easy)
- Where am I? Absolute and relative paths (easy)
- Hidden files (easy)
- Reading in pieces (easy)
- Searching text (medium)
- Finding files (medium)
- Pipes and filters (medium)
- Permissions and owners (medium)
- Environment and history (medium)
Encodings & secrets
Base64, hex, ciphers · 6 labs
- Base64 is not a secret (easy)
- Hexadecimal (easy)
- Caesar's cipher (medium)
- Secrets inside an executable (medium)
- Layer upon layer (medium)
- The final riddle (hard)
Recon & Scanning
Nmap, banners, DNS, enumeration · 6 labs
- Mapping a host (easy)
- Service banners (easy)
- Who's on the network? (medium)
- DNS talks (medium)
- Headers tell tales (medium)
- Full reconnaissance (hard)
Web Exploitation
Hidden dirs, cookies, access · 7 labs
- robots.txt and forgotten folders (easy)
- The cookie that is trusted too much (medium)
- The manufacturer's manual (medium)
- Aurora — Web Breach (medium)
- Clues in the page code (medium)
- Error messages that talk too much (medium)
- The complete portal (hard)
Privilege Escalation
From user to root · 5 labs
- Who am I and what can I do? (medium)
- Forgotten secrets (medium)
- Executables with the SUID bit (medium)
- Secrets in processes and local services (medium)
- Sudo and SUID audit (hard)
Blue Team / Defense
Logs, incidents, hardening · 6 labs
- Reading an access log (easy)
- Who keeps pushing? (medium)
- Timeline of an incident (medium)
- Hardening SSH (medium)
- Closing the unneeded ports (medium)
- Responding to an incident (hard)