Overview
This roadmap supports the eCPPT v3 course with hands-on labs on TryHackMe and PortSwigger, organized into 12 sections that follow the course’s own structure, from PowerShell and reconnaissance through web hacking, Active Directory, and red team engagement fundamentals.
The roadmap was put together by Netriders Academy, with the labs curated by Amr Abdel Hamide. Every link opens the lab directly.
| Total labs | 137 |
| TryHackMe | 94 |
| PortSwigger Web Security Academy | 43 |
| Sections | 12 |
Note: the original list included a number of duplicate entries across sections (the same room referenced more than once); duplicates have been removed here. TryHackMe also occasionally moves rooms between free and paid, so if you find a lab that is locked, let me know and I will update the list.
Section Map
| # | Section | Focus | Labs |
|---|---|---|---|
| 01 | Reconnaissance & OSINT | PowerShell, passive/active recon, and Nmap | 16 |
| 02 | How the Web Works | DNS, HTTP, and the request/response cycle | 4 |
| 03 | Web Hacking Fundamentals | Burp Suite, OWASP Top 10, and first exploitation | 5 |
| 04 | Introduction to Web Hacking | Content discovery, authentication bypass, and command injection | 6 |
| 05 | Burp Suite | Repeater, Intruder, and extensions | 5 |
| 06 | XSS (Cross-Site Scripting) | Reflected, stored, DOM-based, and advanced context-based XSS | 33 |
| 07 | SQL Injection | From fundamentals to UNION and Blind SQLi | 16 |
| 08 | System & Network: Host-Based Attacks | Networking, Windows/Linux privesc, and Active Directory | 34 |
| 09 | Red Team Fundamentals | Engagement structure, threat intel, OPSEC, and C2 | 5 |
| 10 | Initial Access | Recon, weaponization, password attacks, and phishing | 4 |
| 11 | Planning and Scoping | Pentesting fundamentals, engagement scoping, and governance | 3 |
| 12 | Post-Compromise | Situational awareness, enumeration, privesc, lateral movement, and exfiltration | 6 |
Suggested Learning Path
- Foundations: Reconnaissance & OSINT -> How the Web Works
- Web application track: Web Hacking Fundamentals -> Introduction to Web Hacking -> Burp Suite -> XSS -> SQL Injection
- Systems and Active Directory track: System & Network: Host-Based Attacks
- Red team engagement track: Red Team Fundamentals -> Planning and Scoping -> Initial Access -> Post-Compromise
The web application track and the systems/AD track can be studied in parallel; the red team engagement track ties both together and is best done last, once you understand both the technical attacks and the AD environment they are used against.
PortSwigger difficulty levels: Apprentice -> Practitioner -> Expert. If you are new to XSS or SQL injection, complete the Apprentice labs in each subsection before attempting the harder ones.
01. Reconnaissance & OSINT
Focus: PowerShell, passive/active recon, and Nmap
Labs: 16
Building the toolkit you will lean on throughout the course: PowerShell for pentesters, passive and active reconnaissance, and a full Nmap track, plus OSINT tools like Shodan and Google Dorking.
PowerShell
| # | Lab | Platform |
|---|---|---|
| 1 | Windows PowerShell | TryHackMe |
| 2 | PowerShell for Pentesters | TryHackMe |
| 3 | PowerShell | TryHackMe |
Reconnaissance
| # | Lab | Platform |
|---|---|---|
| 4 | Passive Reconnaissance | TryHackMe |
| 5 | Active Reconnaissance | TryHackMe |
| 6 | Red Team Recon | TryHackMe |
Nmap
| # | Lab | Platform |
|---|---|---|
| 7 | Nmap: Live Host Discovery | TryHackMe |
| 8 | Nmap: Basic Port Scans | TryHackMe |
| 9 | Nmap: Advanced Port Scans | TryHackMe |
| 10 | Further Nmap | TryHackMe |
| 11 | Nmap | TryHackMe |
| 12 | RustScan | TryHackMe |
OSINT
| # | Lab | Platform |
|---|---|---|
| 13 | Shodan.io | TryHackMe |
| 14 | Google Dorking | TryHackMe |
| 15 | Web OSINT | TryHackMe |
| 16 | Searchlight OSINT | TryHackMe |
02. How the Web Works
Focus: DNS, HTTP, and the request/response cycle
Labs: 4
Before attacking a web application, understand how it actually works: DNS resolution, HTTP in detail, and how a browser and server exchange data end to end.
| # | Lab | Platform |
|---|---|---|
| 1 | DNS in Detail | TryHackMe |
| 2 | HTTP in Detail | TryHackMe |
| 3 | How Websites Work | TryHackMe |
| 4 | Putting It All Together | TryHackMe |
03. Web Hacking Fundamentals
Focus: Burp Suite, OWASP Top 10, and first exploitation
Labs: 5
Your first hands-on exposure to web attacks: getting comfortable with Burp Suite, working through the OWASP Top 10 and Juice Shop, exploiting file upload vulnerabilities, and a first CTF-style box to tie it together.
| # | Lab | Platform |
|---|---|---|
| 1 | Burp Suite: The Basics | TryHackMe |
| 2 | OWASP Top 10 - 2021 | TryHackMe |
| 3 | OWASP Juice Shop | TryHackMe |
| 4 | Upload Vulnerabilities | TryHackMe |
| 5 | Pickle Rick | TryHackMe |
04. Introduction to Web Hacking
Focus: Content discovery, authentication bypass, and command injection
Labs: 6
Core web attack techniques: walking an application methodically, discovering hidden content, bypassing authentication, enumerating subdomains, and exploiting OS command injection and SQL injection.
| # | Lab | Platform |
|---|---|---|
| 1 | Walking An Application | TryHackMe |
| 2 | Content Discovery | TryHackMe |
| 3 | Authentication Bypass | TryHackMe |
| 4 | Subdomain Enumeration | TryHackMe |
| 5 | OS Command Injection | TryHackMe |
| 6 | SQL Injection Lab | TryHackMe |
05. Burp Suite
Focus: Repeater, Intruder, and extensions
Labs: 5
A deeper pass on Burp Suite: Repeater for manual testing, Intruder for automated attacks, and the other modules and extensions that make it the core tool of every web pentester.
| # | Lab | Platform |
|---|---|---|
| 1 | Burp Suite: The Basics | TryHackMe |
| 2 | Burp Suite: Repeater | TryHackMe |
| 3 | Burp Suite: Intruder | TryHackMe |
| 4 | Burp Suite: Other Modules | TryHackMe |
| 5 | Burp Suite: Extensions | TryHackMe |
06. XSS (Cross-Site Scripting)
Focus: Reflected, stored, DOM-based, and advanced context-based XSS
Labs: 33
The largest section in the roadmap. Start with the TryHackMe rooms for the fundamentals of XSS and CORS, then work through the full PortSwigger XSS track: contexts, DOM-based sinks, filter and CSP bypasses, client-side template injection, and exploitation techniques like cookie theft and CSRF via XSS.
TryHackMe
| # | Lab | Platform |
|---|---|---|
| 1 | Advanced XSS | TryHackMe |
| 2 | XSS | TryHackMe |
| 3 | CORS & SOP | TryHackMe |
PortSwigger - Reflected & Stored XSS
| # | Lab | Level |
|---|---|---|
| 4 | Reflected XSS into HTML context with nothing encoded | Apprentice |
| 5 | Stored XSS into HTML context with nothing encoded | Apprentice |
PortSwigger - DOM-Based XSS
PortSwigger - XSS Contexts
PortSwigger - Client-Side Template Injection
| # | Lab | Level |
|---|---|---|
| 28 | Client-side template injection with AngularJS sandbox escape without strings | Expert |
| 29 | Client-side template injection with AngularJS sandbox escape and CSP | Expert |
PortSwigger - Exploiting XSS
| # | Lab | Level |
|---|---|---|
| 30 | Exploiting XSS to steal cookies | Practitioner |
| 31 | Exploiting XSS to capture passwords | Practitioner |
| 32 | Exploiting XSS to perform CSRF | Practitioner |
PortSwigger - Content Security Policy
| # | Lab | Level |
|---|---|---|
| 33 | Bypassing CSP with policy injection | Expert |
07. SQL Injection
Focus: From fundamentals to UNION and Blind SQLi
Labs: 16
SQL injection from the ground up on TryHackMe, then applied on PortSwigger through UNION attacks and the early stages of Blind SQL injection.
TryHackMe
| # | Lab | Platform |
|---|---|---|
| 1 | SQL Fundamentals | TryHackMe |
| 2 | Advanced SQL Injection | TryHackMe |
| 3 | SQL Injection Lab | TryHackMe |
PortSwigger - Basic
| # | Lab | Level |
|---|---|---|
| 4 | SQL injection vulnerability in WHERE clause allowing retrieval of hidden data | Apprentice |
| 5 | SQL injection vulnerability allowing login bypass | Apprentice |
PortSwigger - Examining the Database
| # | Lab | Level |
|---|---|---|
| 6 | Querying the database type and version on Oracle | Practitioner |
| 7 | Querying the database type and version on MySQL and Microsoft | Practitioner |
| 8 | Listing the database contents on non-Oracle databases | Practitioner |
| 9 | Listing the database contents on Oracle | Practitioner |
PortSwigger - UNION Attacks
| # | Lab | Level |
|---|---|---|
| 10 | UNION attack: determining the number of columns | Practitioner |
| 11 | UNION attack: finding a column containing text | Practitioner |
| 12 | UNION attack: retrieving data from other tables | Practitioner |
| 13 | UNION attack: retrieving multiple values in a single column | Practitioner |
PortSwigger - Blind SQL Injection
| # | Lab | Level |
|---|---|---|
| 14 | Blind SQLi with conditional responses | Practitioner |
| 15 | Blind SQLi with conditional errors | Practitioner |
| 16 | Blind SQLi with time delays | Practitioner |
08. System & Network: Host-Based Attacks
Focus: Networking, Windows/Linux privesc, and Active Directory
Labs: 34
The largest technical section: networking fundamentals, traffic analysis, exploitation with Metasploit, privilege escalation on both Windows and Linux, system hardening, and a full Active Directory attack chain from enumeration to persistence and recovery.
Networking & Traffic Analysis
| # | Lab | Platform |
|---|---|---|
| 1 | Networking Concepts | TryHackMe |
| 2 | Networking Essentials | TryHackMe |
| 3 | Networking Core Protocols | TryHackMe |
| 4 | Network Security Protocols | TryHackMe |
| 5 | Wireshark: The Basics | TryHackMe |
| 6 | Tcpdump | TryHackMe |
Exploitation & Post-Exploitation
| # | Lab | Platform |
|---|---|---|
| 7 | Metasploit: Introduction | TryHackMe |
| 8 | Metasploit: Exploitation | TryHackMe |
| 9 | Meterpreter | TryHackMe |
| 10 | Blue | TryHackMe |
| 11 | Moniker Link | TryHackMe |
Windows Privilege Escalation & Hardening
| # | Lab | Platform |
|---|---|---|
| 12 | Windows Fundamentals 1 | TryHackMe |
| 13 | Windows Fundamentals 2 | TryHackMe |
| 14 | Windows Fundamentals 3 | TryHackMe |
| 15 | Windows PrivEsc | TryHackMe |
| 16 | Windows Local Persistence | TryHackMe |
Linux Privilege Escalation & Hardening
| # | Lab | Platform |
|---|---|---|
| 17 | Linux Privilege Escalation | TryHackMe |
| 18 | Common Linux Privesc | TryHackMe |
| 19 | Linux PrivEsc | TryHackMe |
| 20 | Linux System Hardening | TryHackMe |
| 21 | Intro to Security Architecture | TryHackMe |
Active Directory
| # | Lab | Platform |
|---|---|---|
| 22 | Active Directory Basics | TryHackMe |
| 23 | AD Enumeration | TryHackMe |
| 24 | Exploiting AD | TryHackMe |
| 25 | Breaching AD | TryHackMe |
| 26 | Persisting AD | TryHackMe |
| 27 | Lateral Movement and Pivoting | TryHackMe |
| 28 | Credential Harvesting | TryHackMe |
| 29 | Recovering Active Directory | TryHackMe |
| 30 | Active Directory Hardening | TryHackMe |
| 31 | Attacktive Directory | TryHackMe |
| 32 | The Lay of the Land | TryHackMe |
| 33 | LDAP Injection | TryHackMe |
| 34 | Red Team Capstone Challenge | TryHackMe |
09. Red Team Fundamentals
Focus: Engagement structure, threat intel, OPSEC, and C2
Labs: 5
How a red team engagement is actually run: fundamentals and engagement planning, working with threat intelligence, operational security (OPSEC), and an introduction to command and control (C2) infrastructure.
| # | Lab | Platform |
|---|---|---|
| 1 | Red Team Fundamentals | TryHackMe |
| 2 | Red Team Engagements | TryHackMe |
| 3 | Red Team Threat Intel | TryHackMe |
| 4 | OPSEC | TryHackMe |
| 5 | Intro to C2 | TryHackMe |
10. Initial Access
Focus: Recon, weaponization, password attacks, and phishing
Labs: 4
Getting the first foothold: reconnaissance geared toward an engagement, weaponizing payloads, password attacks, and phishing as an initial access vector.
| # | Lab | Platform |
|---|---|---|
| 1 | Red Team Recon | TryHackMe |
| 2 | Weaponization | TryHackMe |
| 3 | Password Attacks | TryHackMe |
| 4 | Phishing | TryHackMe |
11. Planning and Scoping
Focus: Pentesting fundamentals, engagement scoping, and governance
Labs: 3
The groundwork before any technical work begins: pentesting fundamentals, planning and scoping an engagement, and understanding cyber governance and regulation.
| # | Lab | Platform |
|---|---|---|
| 1 | Pentesting Fundamentals | TryHackMe |
| 2 | Red Team Engagements | TryHackMe |
| 3 | Cyber Governance & Regulation | TryHackMe |
12. Post-Compromise
Focus: Situational awareness, enumeration, privesc, lateral movement, and exfiltration
Labs: 6
What happens after the initial foothold: building situational awareness, enumerating for privilege escalation, persisting, pivoting laterally, and exfiltrating data.
| # | Lab | Platform |
|---|---|---|
| 1 | The Lay of the Land | TryHackMe |
| 2 | Enumeration (Privilege Escalation) | TryHackMe |
| 3 | Windows PrivEsc | TryHackMe |
| 4 | Windows Local Persistence | TryHackMe |
| 5 | Lateral Movement and Pivoting | TryHackMe |
| 6 | Data Exfiltration | TryHackMe |
Red Team Tooling Reference
Beyond the labs above, the original course material includes a curated set of red team tools organized by phase of an engagement. These are reference links, not labs, kept here for convenience.
These links point to shortened LinkedIn redirect URLs from the original course material. Shortened links can rot or be tracked, so replace them with the tools’ direct GitHub or official pages before publishing.
Reconnaissance
Initial Access
Delivery
Command and Control
Credential Dumping
Privilege Escalation
Defense Evasion
Persistence
Lateral Movement
Exfiltration
Tips for Getting the Most Out of These Labs
- Take notes on every lab: the tool, the command, and the idea behind it, so you can come back to them later.
- Avoid walkthroughs until you have genuinely tried on your own.
- Repeat labs a few days later without looking at the solution. This is what makes the knowledge stick.
- Treat the Active Directory subsection as a single narrative: enumeration, breaching, exploiting, lateral movement, and persistence build on each other, so work through them in order rather than jumping around.
These labs and tools are for learning and practice in authorized environments only. Never test any technique or tool on systems you do not own or have explicit permission to test.