3592 words
18 minutes
OSCP+ Prep: Full Labs

Overview#

This is the complete lab roadmap for OSCP+ preparation on this blog, in two parts:

  • Part 1 - Course Modules: 171 TryHackMe labs across 20 numbered modules, following an OSCP+ preparation course from an introduction to cybersecurity through Active Directory, cloud security, and real-world capstone scenarios.
  • Part 2 - Bonus Platforms: a curated set of additional free platforms and labs worth adding once you have worked through the modules, including Hack The Box’s Starting Point track (25 machines), the OverTheWire wargames (10 wargames), PentesterLab, CyberDefenders, VulnHub, picoCTF, local vulnerable apps (WebGoat, DVWA), and 77 additional PortSwigger Web Security Academy labs covering topics the module-based roadmap doesn’t reach (access control, CSRF, file upload, business logic, deserialization, and more).

Everything here was put together to be worked through in order: finish the modules first, then use Part 2 to keep practicing without the guardrails of a guided room.

This roadmap was prepared by Amr Abd El-Hamide for Netriders Academy. The bonus platforms in Part 2 are independent, community-run resources, not part of the Netriders Academy course material.

Total course labs (Part 1)171
Bonus platforms (Part 2)9 (including 77 extra PortSwigger labs)
Platform (Part 1)TryHackMe
Modules covered20

Note: modules are numbered as in the original course material, so the numbering has gaps (modules 2 and 20-22 were not provided and are not covered here). A handful of rooms appear in more than one module because they are relevant to more than one topic; each appearance is counted. Free-tier availability on every platform below can change over time, so if you find something locked or moved, let me know and I will update the post.

Part 1: Course Modules#

Module Map#

ModuleTitleFocusLabs
01Introduction to CybersecuritySecurity principles and the pentesting mindset5
03Report Writing for Penetration TestersCommunicating findings clearly and professionally3
04Information GatheringScoping, reconnaissance, and Nmap20
05Vulnerability ScanningIdentifying and prioritizing vulnerabilities8
06Introduction to Web ApplicationsHow web applications are built and how they behave14
07Common Web Application AttacksPath traversal, file inclusion, upload flaws, and command injection10
08SQL Injection AttacksManual and automated SQL and NoSQL injection12
09Client-Side AttacksSocial engineering, phishing, and mobile security11
10Locating Public ExploitsOSINT and search-driven exploit discovery3
11Fixing ExploitsAdapting public exploits and understanding memory internals12
12Antivirus EvasionAV, EDR, and XDR evasion techniques11
13Password AttacksHashing, cracking, and credential harvesting13
14Windows Privilege EscalationFrom standard user to SYSTEM9
15Linux Privilege EscalationFrom standard user to root7
16Port Redirection and SSH TunnelingPivoting traffic through compromised hosts4
17Tunneling Through Deep Packet InspectionTraffic analysis and evading inspection8
18Metasploit FrameworkExploitation and post-exploitation with Metasploit8
19Active Directory Introduction and EnumerationAD authentication, breaching, and enumeration7
23AWS: Attacking Cloud InfrastructureCloud security fundamentals and common pitfalls3
24Real World ScenariosCapstone-style, end-to-end engagements3

Suggested Learning Path#

Work through the modules in numerical order; the course is built so each one relies on the skills from the ones before it.

  1. Getting started: Module 1 (Introduction) -> Module 3 (Report Writing) -> Module 4 (Information Gathering) -> Module 5 (Vulnerability Scanning)
  2. Web applications: Module 6 -> Module 7 -> Module 8 (SQL Injection) -> Module 9 (Client-Side Attacks)
  3. Exploitation: Module 10 (Locating Public Exploits) -> Module 11 (Fixing Exploits) -> Module 12 (Antivirus Evasion)
  4. Post-exploitation: Module 13 (Password Attacks) -> Module 14 (Windows PrivEsc) -> Module 15 (Linux PrivEsc)
  5. Network and tooling: Module 16 (Port Redirection & Tunneling) -> Module 17 (Deep Packet Inspection) -> Module 18 (Metasploit)
  6. Active Directory and beyond: Module 19 (AD Introduction) -> Module 23 (AWS Cloud) -> Module 24 (Real World Scenarios)

Module 01 - Introduction to Cybersecurity#

Focus: Security principles and the pentesting mindset
Labs: 5

The starting point of the course: core security principles, an overview of careers in the field, an introduction to offensive security, effective searching, and a first dive into what penetration testing actually involves.

#LabPlatform
1Security PrinciplesTryHackMe
2Careers in CyberTryHackMe
3Offensive Security IntroTryHackMe
4Search SkillsTryHackMe
5Dive into PentestingTryHackMe

Module 03 - Report Writing for Penetration Testers#

Focus: Communicating findings clearly and professionally
Labs: 3

A skill that separates a good pentester from a great one: writing clear, actionable pentest reports, reporting alerts at a SOC L1 level, and retesting to confirm that findings have actually been fixed.

#LabPlatform
1Writing Pentest ReportsTryHackMe
2SOC L1 Alert ReportingTryHackMe
3RetestingTryHackMe

Module 04 - Information Gathering#

Focus: Scoping, reconnaissance, and Nmap
Labs: 20

How every engagement begins: security principles and pentesting fundamentals, planning and scoping, red team engagements and infrastructure, passive and active reconnaissance, a full Nmap track, and a first look at reconnaissance against AI systems.

#LabPlatform
1Principles of SecurityTryHackMe
2Pentesting FundamentalsTryHackMe
3Dive into PentestingTryHackMe
4Penetration Testing FrameworksTryHackMe
5Planning and ScopingTryHackMe
6Red Team EngagementsTryHackMe
7Guided Pentest: InfrastructureTryHackMe
8Red Team ReconTryHackMe
9Passive ReconnaissanceTryHackMe
10Active ReconnaissanceTryHackMe
11Nmap: Live Host DiscoveryTryHackMe
12Nmap: Basic Port ScansTryHackMe
13Nmap: Advanced Port ScansTryHackMe
14Further NmapTryHackMe
15NmapTryHackMe
16GREPTryHackMe
17You Got MailTryHackMe
18VulnversityTryHackMe
19AI System ReconnaissanceTryHackMe
20AI Threat ModellingTryHackMe

Module 05 - Vulnerability Scanning#

Focus: Identifying and prioritizing vulnerabilities
Labs: 8

Turning recon into a target list: understanding vulnerabilities and how scanners work, vulnerability management, network discovery and detection, scanning with OpenVAS and Nessus, and a first pass at exploitation with Metasploit.

#LabPlatform
1Vulnerabilities 101TryHackMe
2Vulnerability Scanner OverviewTryHackMe
3Vulnerability ManagementTryHackMe
4Network Discovery & DetectionTryHackMe
5OpenVASTryHackMe
6NessusTryHackMe
7Metasploit: ExploitationTryHackMe
8SupportTryHackMe

Module 06 - Introduction to Web Applications#

Focus: How web applications are built and how they behave
Labs: 14

The foundation for every web attack module that follows: how websites work, HTTP and DNS in detail, protocols and servers, JavaScript essentials, session management, walking an application methodically, content discovery, subdomain enumeration, a first look at XSS, and web server attacks.

#LabPlatform
1How Websites WorkTryHackMe
2HTTP in DetailTryHackMe
3Protocols and ServersTryHackMe
4DNS in DetailTryHackMe
5Web Application BasicsTryHackMe
6Session ManagementTryHackMe
7JavaScript EssentialsTryHackMe
8Walking An ApplicationTryHackMe
9Walking An Application (Legacy)TryHackMe
10Content DiscoveryTryHackMe
11Subdomain EnumerationTryHackMe
12XSSTryHackMe
13Web Server AttacksTryHackMe
14Web Server Attacks 2TryHackMe

Module 07 - Common Web Application Attacks#

Focus: Path traversal, file inclusion, upload flaws, and command injection
Labs: 10

Hands-on exploitation of common web flaws, starting with the Mr Robot CTF and moving through file path traversal, file inclusion, upload vulnerabilities, OS command injection, and two CTF-style boxes to put it all together.

#LabPlatform
1Mr Robot CTFTryHackMe
2File Path TraversalTryHackMe
3File InclusionTryHackMe
4Upload VulnerabilitiesTryHackMe
5OS Command InjectionTryHackMe
6InjecticsTryHackMe
7Modern Web StacksTryHackMe
8Daily BugleTryHackMe
9Recruit Web ChallengeTryHackMe
10HammerTryHackMe

Module 08 - SQL Injection Attacks#

Focus: Manual and automated SQL and NoSQL injection
Labs: 12

A dedicated SQL injection track: database and SQL basics, manual injection fundamentals and practice, automating attacks with SQLMap, a look at NoSQL injection, and several CTF-style rooms to reinforce the technique.

#LabPlatform
1Database and SQL BasicsTryHackMe
2SQL FundamentalsTryHackMe
3SQL Injection LabTryHackMe
4SQLi LabTryHackMe
5Advanced SQL InjectionTryHackMe
6SQLMap: The BasicsTryHackMe
7SQLMapTryHackMe
8NoSQL InjectionTryHackMe
9Avengers BlogTryHackMe
10SQHellTryHackMe
11Sequel DumpTryHackMe
12PrioritiseTryHackMe

Module 09 - Client-Side Attacks#

Focus: Social engineering, phishing, and mobile security
Labs: 11

Attacks that target the human rather than the machine: OSINT and search skills, understanding human attack vectors, a full phishing track including detection and simulated campaigns, mobile security, and building effective wordlists.

#LabPlatform
1Search SkillsTryHackMe
2SomeSINTTryHackMe
3Human Attack VectorsTryHackMe
4Phishing Emails 1TryHackMe
5Phishing (Advent of Cyber 2025)TryHackMe
6PhishingTryHackMe
7Spotting Phishing (Advent of Cyber 2025)TryHackMe
8Phishing: HiddenEyeTryHackMe
9Silent MonitorTryHackMe
10Mobile SecurityTryHackMe
11Introduction to WordlistsTryHackMe

Module 10 - Locating Public Exploits#

Focus: OSINT and search-driven exploit discovery
Labs: 3

Finding out what has already been discovered about a target: Google Dorking, refining your search skills, and using Shodan to locate exposed systems and known vulnerabilities.

#LabPlatform
1Google DorkingTryHackMe
2Search SkillsTryHackMe
3Shodan.ioTryHackMe

Module 11 - Fixing Exploits#

Focus: Adapting public exploits and understanding memory internals
Labs: 12

Public exploits rarely work out of the box. This module covers the internals you need to fix them: x86-64 architecture, Windows internals and memory, buffer overflow fundamentals, several real CVEs to practice against, and runtime detection evasion.

#LabPlatform
1x86-64 ArchitectureTryHackMe
2Windows InternalsTryHackMe
3Windows Memory and ProcessesTryHackMe
4Buffer Overflow PrepTryHackMe
5Sudo Vulnerabilities: Buffer OverflowTryHackMe
6Tomcat (CVE-2024-50379)TryHackMe
7PaperCutTryHackMe
8React2Shell (CVE-2025-55182)TryHackMe
9CriticalTryHackMe
10No Name CTFTryHackMe
11Runtime Detection EvasionTryHackMe
12Abusing Windows InternalsTryHackMe

Module 12 - Antivirus Evasion#

Focus: AV, EDR, and XDR evasion techniques
Labs: 11

Getting payloads past modern defenses: how antivirus, EDR, and XDR work, malware classification, obfuscation principles, PowerShell for pentesters, and hands-on signature and sandbox evasion.

#LabPlatform
1Intro to AntivirusTryHackMe
2Introduction to EDRsTryHackMe
3XDR IntroductionTryHackMe
4Malware ClassificationTryHackMe
5Obfuscation PrinciplesTryHackMe
6PowerShell for PentestersTryHackMe
7Signature EvasionTryHackMe
8AV Evasion: ShellcodeTryHackMe
9BypassTryHackMe
10Bypass Disable FunctionsTryHackMe
11Sandbox EvasionTryHackMe

Module 13 - Password Attacks#

Focus: Hashing, cracking, and credential harvesting
Labs: 13

The full password attack lifecycle: hashing fundamentals and cryptography, online and offline password attacks with Hydra and John the Ripper, cracking real hashes, exploiting HackPark, recent CVEs involving credentials, and credential harvesting.

#LabPlatform
1Hashing BasicsTryHackMe
2Hashing - Crypto 101TryHackMe
3Public Key CryptographyTryHackMe
4Password AttacksTryHackMe
5John The Ripper: The BasicsTryHackMe
6HydraTryHackMe
7Crack The HashTryHackMe
8Crack The Hash Level 2TryHackMe
9HackParkTryHackMe
10Attacks on Encrypted Files (Advent of Cyber 2025)TryHackMe
11Erlang/OTP SSH (CVE-2025-32433)TryHackMe
12Outlook NTLM LeakTryHackMe
13Credential HarvestingTryHackMe

Module 14 - Windows Privilege Escalation#

Focus: From standard user to SYSTEM
Labs: 9

Escalating privileges on Windows: the command line, Windows internals and memory, a full Windows PrivEsc track, the LocalPotato technique, an arena to practice against, and establishing local persistence once you have escalated.

#LabPlatform
1Windows Command LineTryHackMe
2Windows InternalsTryHackMe
3Windows Memory and ProcessesTryHackMe
4Windows PrivEscTryHackMe
5Windows 10 PrivEscTryHackMe
6LocalPotatoTryHackMe
7Abusing Windows InternalsTryHackMe
8Windows PrivEsc ArenaTryHackMe
9Windows Local PersistenceTryHackMe

Module 15 - Linux Privilege Escalation#

Focus: From standard user to root
Labs: 7

The Linux side of privilege escalation: shell fundamentals, process analysis, enumeration for privesc, a full Linux PrivEsc track, and two CTF-style boxes to apply the technique end to end.

#LabPlatform
1Intro to ShellsTryHackMe
2Linux Process AnalysisTryHackMe
3Linux PrivEsc EnumerationTryHackMe
4Linux Privilege EscalationTryHackMe
5Common Linux PrivescTryHackMe
6IronShadeTryHackMe
7JumpTryHackMe

Module 16 - Port Redirection and SSH Tunneling#

Focus: Pivoting traffic through compromised hosts
Labs: 4

Moving traffic where you need it: data exfiltration, DNS manipulation, an introduction to command and control infrastructure, and Windows memory and network internals that underpin tunneling techniques.

#LabPlatform
1Data ExfiltrationTryHackMe
2DNS ManipulationTryHackMe
3Intro to C2TryHackMe
4Windows Memory and NetworkTryHackMe

Module 17 - Tunneling Through Deep Packet Inspection#

Focus: Traffic analysis and evading inspection
Labs: 8

Understanding what deep packet inspection sees: a full Wireshark track, TShark, packet and frame fundamentals, traffic analysis, Snort, and wireless security.

#LabPlatform
1Wireshark: The BasicsTryHackMe
2WiresharkTryHackMe
3Wireshark: Packet OperationsTryHackMe
4TShark: The BasicsTryHackMe
5Packets & FramesTryHackMe
6Wireshark: Traffic AnalysisTryHackMe
7SnortTryHackMe
8Wireless SecurityTryHackMe

Module 18 - Metasploit Framework#

Focus: Exploitation and post-exploitation with Metasploit
Labs: 8

A dedicated deep dive into Metasploit: introduction, exploitation, Meterpreter, the framework basics, post-exploitation, shell generation and delivery, payload generation, and scanning combined with exploitation.

#LabPlatform
1Metasploit: IntroductionTryHackMe
2Metasploit: ExploitationTryHackMe
3MeterpreterTryHackMe
4Metasploit: The BasicsTryHackMe
5Metasploit: Post-ExploitationTryHackMe
6Shell Generation and DeliveryTryHackMe
7Metasploit: Payload GenerationTryHackMe
8Metasploit: Scanning and ExploitationTryHackMe

Module 19 - Active Directory Introduction and Enumeration#

Focus: AD authentication, breaching, and enumeration
Labs: 7

The starting point for attacking Active Directory: how AD authentication works, an introduction to breaching AD, understanding a Windows computer from the inside, basic and authenticated enumeration, and a full breaching and enumeration exercise.

#LabPlatform
1Intro to Active Directory AuthenticationTryHackMe
2Introduction to Active Directory BreachingTryHackMe
3Inside a ComputerTryHackMe
4AD Basic EnumerationTryHackMe
5AD Authenticated EnumerationTryHackMe
6Breaching ADTryHackMe
7AD EnumerationTryHackMe

Module 23 - AWS: Attacking Cloud Infrastructure#

Focus: Cloud security fundamentals and common pitfalls
Labs: 3

A focused look at cloud security: an introduction to cloud security concepts, the fundamentals that apply across providers, and the common pitfalls and misconfigurations that lead to real breaches.

#LabPlatform
1Introduction to Cloud SecurityTryHackMe
2Cloud Security FundamentalsTryHackMe
3Cloud Security PitfallsTryHackMe

Module 24 - Real World Scenarios#

Focus: Capstone-style, end-to-end engagements
Labs: 3

The final module: full, realistic engagements that combine reconnaissance, exploitation, privilege escalation, and lateral movement into a single scenario, capped with the Wreath network for a multi-machine pivoting exercise.

#LabPlatform
1Red Team Capstone ChallengeTryHackMe
2HoloTryHackMe
3Wreath NetworkTryHackMe

Tips for Getting the Most Out of These Labs#

  • Take detailed notes from Module 1 onward. Report writing is Module 3 for a reason: build the habit of documenting as you go, not after you finish.
  • Repeat Module 4’s reconnaissance workflow on every later CTF-style box before looking anything up. Consistent methodology is what the exam actually tests.
  • Don’t skip the “boring” modules. Vulnerability scanning, tunneling, and report writing rarely feel as exciting as exploitation, but they are just as heavily tested.
  • Revisit privilege escalation (Modules 14 and 15) constantly. These are the modules most worth repeating from memory, without notes, until they are automatic.

These labs are for learning and practice in the provided lab environments only. Never test any technique on systems you do not own or have explicit permission to test.


Part 2: Bonus - More Free Platforms Beyond TryHackMe#

Once you’ve worked through the modules above, these free platforms round out your OSCP+ preparation: less hand-holding than a guided TryHackMe room, more of the ambiguity you’ll face in the exam.

A1. Hack The Box: Starting Point#

Focus: A guided, beginner-friendly introduction to the Hack The Box platform
Free content: 3 tiers, most machines free

Hack The Box is the natural next step after TryHackMe’s guided rooms: less hand-holding, more “figure it out.” Starting Point is HTB’s own on-ramp: a linear track of easy machines that teaches you to connect over VPN, enumerate a target, and get your first foothold. Most Starting Point machines are free; a few are VIP-only but never block your progress through the free ones. See the official introduction to Starting Point for how tiers work, then find each machine by name inside the Starting Point section of the HTB app.

Tier 0: The Absolute Fundamentals#

Single-step machines, each focused on connecting to and interacting with one service.

#Machine
1Meow
2Fawn
3Dancing
4Redeemer
5Explosion
6Preignition
7Mongod
8Synced

Tier 1: Fundamental Exploitation#

A bit more complexity, still one primary exploitation step per machine.

#Machine
1Appointment
2Sequel
3Crocodile
4Responder
5Three
6Ignition
7Bike
8Funnel
9Pennyworth
10Tactics

Tier 2: Full-Fledged Machines#

Multi-step machines with both a user and a root/system flag: enumerate, get a foothold, then escalate.

#Machine
1Archetype
2Oopsie
3Vaccine
4Unified
5Included
6Markup
7Base

A2. OverTheWire: Wargames#

Focus: Terminal-based, SSH-driven wargames
Free content: All wargames listed below

OverTheWire is one of the oldest free platforms in the field: no browser, no VM, just SSH into a level and find the password to the next one. It needs zero setup, which makes it a great companion to run alongside any other course. Start with Bandit if you are new to Linux; the rest can be tackled roughly in the order below as your skills grow.

#WargameFocusLevelDescription
1BanditBanditBeginner34 levels of Linux fundamentals: navigating the filesystem, permissions, SSH, and basic text processing. The mandatory starting point for this platform.
2NatasNatasWeb SecurityA level-based web security wargame: source code review, common web vulnerabilities, and creative bypasses, all in the browser.
3LeviathanLeviathanBeginner to IntermediateA short wargame focused on reading and reasoning about compiled programs without access to source code.
4KryptonKryptonCryptographyClassic and modern cryptography challenges, from simple substitution ciphers to more advanced encoding schemes.
5NarniaNarniaBinary Exploitation (Intro)An introduction to binary exploitation and memory corruption on Linux.
6BehemothBehemothBinary Exploitation (Intermediate)A step up from Narnia, with more advanced binary exploitation scenarios.
7UtumnoUtumnoAdvancedAdvanced binary exploitation for players who have finished Narnia and Behemoth.
8MazeMazeAdvancedA maze-like advanced wargame combining several exploitation techniques.
9VortexVortexBinary ExploitationAnother binary exploitation wargame with its own progression of challenges.
10ManpageManpageLinux/UnixChallenges built around reading and understanding Unix man pages.

A3. PentesterLab: Free Exercises#

Focus: Web application vulnerabilities, with source code review
Free content: A rotating set of exercises across every badge category

PentesterLab stands out for pairing exploitation with source code review: you don’t just send a payload, you see the vulnerable code and understand exactly why it’s exploitable. Exercises are grouped into badges (Introduction, Unix, Essential, Web, Authentication/Authorization, API, Code Review, and more), and each badge has a mix of free and PRO-only exercises, clearly marked “Free Tier” on the exercise page. Work through the free exercises in the Introduction and Unix badges first, then dip into Web and Authentication/Authorization as you finish the web-focused roadmaps elsewhere on this blog.

A4. Root-Me: Wide-Coverage Challenges#

Focus: Broad, self-directed challenges across many categories
Free content: The large majority of the platform

Root-Me is a long-running, community-driven challenge platform covering web, cryptography, network, steganography, reverse engineering, and more, in a single points-based scoreboard. It has less structure than TryHackMe or a guided roadmap, which makes it a good place to go once you already know a topic and want a wide bank of realistic challenges to test yourself against.

A5. CyberDefenders: Blue Team Practice#

Focus: Log analysis, malware analysis, and incident response, from the defender’s side
Free content: A large set of downloadable challenges

Every roadmap on this blog so far leans offensive. CyberDefenders is the counterweight: free, downloadable “Challenges” built around real PCAP files, disk images, and logs, each with a set of investigative questions to answer. It’s excellent practice for the Digital Forensics, Threat Hunting, and CySA+-style material covered elsewhere on this blog, from the other side of the fence.

A6. VulnHub: Downloadable Vulnerable Machines#

Focus: Full boot2root VMs you run yourself
Free content: The entire library

VulnHub hosts a large, entirely free library of downloadable vulnerable virtual machines. Unlike TryHackMe or Hack The Box, there is no hosted infrastructure: you download an OVA or VMDK and run it locally in VirtualBox or VMware. That makes it slower to get started, but it’s a good way to practice working entirely offline and to build comfort with setting up your own lab environment, a skill the exam labs for certifications like OSCP assume you already have.

A7. picoCTF: Beginner-Friendly CTF Archive#

Focus: A large, permanent archive of beginner-to-intermediate CTF challenges
Free content: The entire archive, year-round

picoCTF, run by Carnegie Mellon University, was built as a yearly competition for students but keeps its full archive of past challenges open year-round for free practice. It spans binary exploitation, cryptography, web exploitation, forensics, and reverse engineering, each with a difficulty rating, and is a good source of short, self-contained challenges when you want a single problem to solve in an hour rather than a full machine.

A8. WebGoat & DVWA: Local Vulnerable Web Apps#

Focus: OWASP Top 10 practice you run entirely on your own machine
Free content: Both are fully open source

Two classic, self-hosted training applications worth having in your own lab, both free and open source:

  • OWASP WebGoat: a deliberately insecure Java application maintained by OWASP, with guided lessons for each vulnerability class in the OWASP Top 10.
  • DVWA (Damn Vulnerable Web Application): a PHP/MySQL application with adjustable difficulty levels (low, medium, high) for the same vulnerability, so you can see how the same attack needs to adapt as defenses get stronger.

Both run easily in Docker and are worth keeping around as a no-time-limit sandbox for testing a payload or technique you just learned somewhere else.


A9. PortSwigger Web Security Academy: Additional Topics#

Focus: Web vulnerability classes not already covered by the XSS and SQL injection tracks in the other roadmaps on this blog
Labs: 77 across 14 topics

The web-focused roadmaps elsewhere on this blog (eWAPT v2, eCPPT v3, eJPT v2, the Advanced Web Application Pentest roadmap) already cover PortSwigger labs for XSS, SQL injection, NoSQL injection, SSRF, and API testing in depth. This section fills in the rest of the Web Security Academy: access control, CSRF, file upload, business logic flaws, insecure deserialization, information disclosure, race conditions, path traversal, CORS, clickjacking, OAuth, JWT, server-side template injection, and web cache poisoning. As with the other PortSwigger sections on this blog, work through Apprentice labs in a topic before moving on to Practitioner and Expert.

Access Control#

Apprentice-to-Practitioner labs on vertical and horizontal privilege escalation, IDOR, and access control bypasses.

#LabLevel
1Unprotected admin functionalityApprentice
2Unprotected admin functionality with unpredictable URLApprentice
3User role controlled by request parameterApprentice
4User role can be modified in user profileApprentice
5URL-based access control can be circumventedPractitioner
6Method-based access control can be circumventedPractitioner
7Multi-step process with no access control on one stepPractitioner
8Referer-based access controlPractitioner

CSRF (Cross-Site Request Forgery)#

Constructing CSRF attacks and bypassing the most common defenses: tokens, SameSite cookies, and Referer validation.

#LabLevel
1CSRF vulnerability with no defensesApprentice
2CSRF where token validation depends on request methodPractitioner
3CSRF where token validation depends on token being presentPractitioner
4CSRF where token is not tied to user sessionPractitioner
5CSRF where token is tied to non-session cookiePractitioner
6SameSite Strict bypass via client-side redirectPractitioner
7SameSite Lax bypass via cookie refreshExpert

File Upload Vulnerabilities#

Uploading a web shell through weak validation: content-type checks, extension blacklists, path traversal, and race conditions.

#LabLevel
1Remote code execution via web shell uploadApprentice
2Web shell upload via Content-Type restriction bypassApprentice
3Web shell upload via path traversalPractitioner
4Web shell upload via extension blacklist bypassPractitioner
5Web shell upload via obfuscated file extensionPractitioner
6Remote code execution via polyglot web shell uploadExpert

Business Logic Vulnerabilities#

Flaws that come from broken assumptions in an application’s workflow rather than from a technical injection point.

#LabLevel
1Excessive trust in client-side controlsApprentice
2High-level logic vulnerabilityApprentice
3Inconsistent security controlsApprentice
4Flawed enforcement of business rulesPractitioner
5Low-level logic flawPractitioner
6Insufficient workflow validationPractitioner
7Authentication bypass via flawed state machinePractitioner
8Infinite money logic flawExpert

Insecure Deserialization#

Manipulating serialized data to inject malicious objects, from basic tampering through to building a custom gadget chain.

#LabLevel
1Modifying serialized objectsApprentice
2Modifying serialized data typesPractitioner
3Using application functionality to exploit insecure deserializationPractitioner
4Arbitrary object injection in PHPPractitioner
5Exploiting Java deserialization with Apache CommonsPractitioner
6Exploiting Python deserialization with PicklePractitioner
7Developing a custom gadget chain for Java deserializationExpert

Information Disclosure#

Finding sensitive data a site unintentionally reveals, through error messages, debug pages, backups, and version control history.

#LabLevel
1Information disclosure in error messagesApprentice
2Information disclosure on debug pageApprentice
3Source code disclosure via backup filesPractitioner
4Authentication bypass via information disclosurePractitioner
5Information disclosure via version control historyPractitioner

Race Conditions#

Exploiting timing windows in multi-step processes, from single-endpoint races to limit-overrun and multi-endpoint attacks.

#LabLevel
1Limit overrun race conditionsApprentice
2Bypassing rate limits via race conditionsPractitioner
3Multi-endpoint race conditionsPractitioner
4Single-endpoint race conditionsPractitioner
5Partial construction race conditionsExpert

Path Traversal#

Reading files outside a web root through directory traversal sequences, and bypassing common filters and sanitization.

#LabLevel
1File path traversal, simple caseApprentice
2File path traversal, traversal sequences blocked with absolute path bypassPractitioner
3File path traversal, traversal sequences stripped non-recursivelyPractitioner
4File path traversal, traversal sequences stripped with superfluous URL-decodePractitioner
5File path traversal, validation of start of pathPractitioner
6File path traversal, validation of file extension with null byte bypassPractitioner

CORS (Cross-Origin Resource Sharing)#

Exploiting overly permissive CORS configurations to read data across origins.

#LabLevel
1CORS vulnerability with basic origin reflectionPractitioner
2CORS vulnerability with trusted null originPractitioner
3CORS vulnerability with trusted insecure protocolsPractitioner

Clickjacking#

Tricking a user into clicking something different from what they perceive, and bypassing CSRF tokens and frame-buster scripts along the way.

#LabLevel
1Basic clickjacking with CSRF token protectionApprentice
2Clickjacking with form input prefilled from a URL parameterApprentice
3Clickjacking with a frame buster scriptPractitioner
4Multistep clickjackingPractitioner

OAuth Authentication#

Exploiting flawed OAuth 2.0 implementations, from broken redirect_uri validation to account hijacking.

#LabLevel
1Authentication bypass via OAuth implicit flowPractitioner
2Forced OAuth profile linkingPractitioner
3OAuth account hijacking via redirect_uriPractitioner
4Flawed CSRF protection allows OAuth account hijackingPractitioner
5OAuth account hijacking via open redirectExpert

JWT (JSON Web Tokens)#

Bypassing authentication by attacking the JWT itself: unverified signatures, weak keys, and header injection.

#LabLevel
1JWT authentication bypass via unverified signatureApprentice
2JWT authentication bypass via flawed signature verificationApprentice
3JWT authentication bypass via weak signing keyPractitioner
4JWT authentication bypass via jwk header injectionPractitioner
5JWT authentication bypass via jku header injectionPractitioner
6JWT authentication bypass via kid header path traversalPractitioner

Server-Side Template Injection (SSTI)#

Injecting into a template engine to achieve remote code execution, from basic detection to exploiting an unknown language.

#LabLevel
1Basic server-side template injectionPractitioner
2Server-side template injection with information disclosure via user-supplied objectsPractitioner
3Server-side template injection in an unknown language with a documented exploitPractitioner

Web Cache Poisoning#

Poisoning a cache with a malicious response by exploiting unkeyed inputs: headers, query strings, and cookies.

#LabLevel
1Web cache poisoning with an unkeyed headerPractitioner
2Web cache poisoning with an unkeyed cookiePractitioner
3Web cache poisoning with multiple headersPractitioner
4Combining web cache poisoning vulnerabilitiesExpert

How to Fit These Into Your Study Plan#

  • Run OverTheWire Bandit in parallel with any course. It needs no setup, takes 30 minutes here and there, and directly reinforces the Linux fundamentals every other roadmap on this blog assumes you already have.
  • Use Hack The Box Starting Point once you’ve finished a TryHackMe-based roadmap. The lack of hand-holding is the point: it tests whether the methodology actually stuck.
  • Keep CyberDefenders in rotation if you’re working through the CySA+ or DFIR roadmaps. It’s the closest free equivalent to the log and PCAP analysis those exams actually test.
  • Set up WebGoat or DVWA locally once, and leave them running. They’re the fastest way to test a technique the moment you read about it, without spinning up a TryHackMe room.

These platforms are for learning and practice in the environments they provide only. Never test any technique on systems you do not own or have explicit permission to test.

OSCP+ Prep: Full Labs
https://bad-glitch.github.io/posts/labs/oscp---labs/oscp/
Author
Amr Abdel Hamide
Published at
2026-09-19