Browse CTFs New CTF Sign in
Back to Learning Paths
Penetration Tester
Practitioner Wave 1 Draft

Penetration Tester

90.0h estimated 5 Courses

Practitioner-level certification for penetration testers. The broadest path covering web, API, binary, crypto, cloud, and offensive capstone.

Sign in to enroll

Reconnaissance, Enumeration and Offensive OSINT

15 cards

AWS Cognito Unauthenticated Identity Pool Exploitation: Anonymous Credential Escalation

osint_collection Difficulty 1–5 30 min

Terraform State Manipulation: Injecting Malicious Resource Definitions via Backend Write Access

osint_collection Difficulty 1–5 30 min

AWS CloudFormation Credential Exposure: Extracting Secrets from Stack Templates

osint_collection Difficulty 1–5 30 min

AWS Lambda Execution Role Privilege Escalation: Function Invocation for IAM Abuse

osint_collection Difficulty 1–5 30 min

AWS Secrets Manager Access Control Weaknesses: Scoping IAM Policies for GetSecretValue

osint_collection Difficulty 1–5 30 min

AWS Confused Deputy Attack: Cross-Account Role Assumption Without External ID Enforcement

osint_collection Difficulty 1–5 30 min

Reconstructing SMTP Email Sessions and Extracting Attachments from Network Traffic Captures

osint_collection Difficulty 1–5 30 min

Parsing FTP Command and Response Traffic with Passive Mode Data Channel Reconstruction

osint_collection Difficulty 1–5 30 min

Parsing Telnet IAC Command Sequences and Reconstructing Plaintext Sessions from PCAP

osint_collection Difficulty 1–5 30 min

Reconstructing IRC Sessions via Protocol PCAP Analysis and Channel Message Content Recovery

osint_collection Difficulty 1–5 30 min

Reconstructing LDAP Directory Queries via PCAP Analysis and Enumeration Pattern Detection

osint_collection Difficulty 1–5 30 min

Analyzing WebSocket PCAP Captures via HTTP Upgrade Detection and Frame Payload Extraction

osint_collection Difficulty 1–5 30 min

Reconstructing SIP Call Dialogs and Extracting RTP Stream Parameters for VoIP Forensics

osint_collection Difficulty 1–5 30 min

Enumerating Local Services via mDNS PCAP Multicast Record Analysis and Host Fingerprinting

osint_collection Difficulty 1–5 30 min

Interpreting Modbus/TCP Function Codes and Extracting PLC Register Values from PCAP

osint_collection Difficulty 1–5 30 min

Authentication, Sessions, Access Control and APIs

42 cards

IDOR (numeric)

web_auth_sessions Difficulty 1–5 30 min

IDOR (UUID guessable)

web_auth_sessions Difficulty 1–5 30 min

Parameter pollution IDOR

web_auth_sessions Difficulty 1–5 30 min

Horizontal Privilege Escalation: Cross-User Resource Access via Insufficient IDOR Controls

web_auth_sessions Difficulty 1–5 30 min

Vertical Privilege Escalation: Role Bypass and Unauthorized Administrative Function Access

web_auth_sessions Difficulty 1–5 30 min

Role misassignment

web_auth_sessions Difficulty 1–5 30 min

Mass Assignment Vulnerability: Unfiltered Object Binding for Unauthorized Property Modification

web_auth_sessions Difficulty 1–5 30 min

Hidden admin endpoint

web_auth_sessions Difficulty 1–5 30 min

GraphQL overexposure

web_auth_sessions Difficulty 1–5 30 min

REST verb confusion

web_auth_sessions Difficulty 1–5 30 min

CORS misconfiguration

web_auth_sessions Difficulty 1–5 30 min

Multi-tenant data leak

web_auth_sessions Difficulty 1–5 30 min

SQL injection (classic)

web_auth_sessions Difficulty 1–5 30 min

SQLi blind time-based

web_auth_sessions Difficulty 1–5 30 min

SQLi second order

web_auth_sessions Difficulty 1–5 30 min

NoSQL Injection: MongoDB Operator Injection for Authentication Bypass and Data Enumeration

web_auth_sessions Difficulty 1–5 30 min

LDAP Injection: Filter String Manipulation for Authentication Bypass and Directory Enumeration

web_auth_sessions Difficulty 1–5 30 min

Template injection (Jinja2/Twig)

web_auth_sessions Difficulty 1–5 30 min

SSTI chain

web_auth_sessions Difficulty 1–5 30 min

OS Command Injection: Shell Metacharacter Exploitation for Server-Side Command Execution

web_auth_sessions Difficulty 1–5 30 min

Argument injection

web_auth_sessions Difficulty 1–5 30 min

Path traversal

web_auth_sessions Difficulty 1–5 30 min

LFI

web_auth_sessions Difficulty 1–5 30 min

RFI

web_auth_sessions Difficulty 1–5 30 min

SSTI to RCE chain

web_auth_sessions Difficulty 1–5 30 min

Reflected XSS: URL-Based Script Injection and Single-Interaction Client-Side Code Execution

web_auth_sessions Difficulty 1–5 30 min

Stored XSS: Persistent Script Injection for Session Hijacking and Admin Panel Exploitation

web_auth_sessions Difficulty 1–5 30 min

DOM-based XSS

web_auth_sessions Difficulty 1–5 30 min

CSP Bypass: Content Security Policy Circumvention via JSONP Endpoints, Trusted Domain Abuse and Nonce Prediction

web_auth_sessions Difficulty 1–5 30 min

AngularJS expression injection

web_auth_sessions Difficulty 1–5 30 min

Markdown rendering XSS

web_auth_sessions Difficulty 1–5 30 min

File upload XSS

web_auth_sessions Difficulty 1–5 30 min

Detecting Sudo Abuse Through GTFOBins Traces and Sudoers Modification Forensics

web_auth_sessions Difficulty 1–5 30 min

Tracing Unauthorized Shadow File Access Using Auditd Event Log Forensics

web_auth_sessions Difficulty 1–5 30 min

SMTP Inbox OSINT: Mail Content Analysis, Sender Tracing and Inbox-Based Identity Discovery

web_auth_sessions Difficulty 1–5 30 min

LDAP Anonymous Reconnaissance: Unauthenticated Directory Traversal and User Attribute Harvesting

web_auth_sessions Difficulty 1–5 30 min

Git Repository History Secret Recovery: Identifying Deleted Credentials via Commit Log Forensics

web_auth_sessions Difficulty 1–5 30 min

PDF first-letter acrostic forensics

web_auth_sessions Difficulty 1–5 30 min

PDF JavaScript action forensics

web_auth_sessions Difficulty 1–5 30 min

PDF hidden AcroForm field forensics

web_auth_sessions Difficulty 1–5 30 min

PDF incremental update revision forensics

web_auth_sessions Difficulty 1–5 30 min

Terraform State File Exposure: Extracting Infrastructure Secrets from Public S3 Backends

web_auth_sessions Difficulty 1–5 30 min

Injections, SSRF, XSS, File Handling and Business Logic

49 cards

Service worker abuse

web_injection_logic Difficulty 1–5 30 min

Basic SSRF Exploitation: Internal Service Enumeration via Server-Side URL Fetch Manipulation

web_injection_logic Difficulty 1–5 30 min

SSRF to Cloud Metadata: AWS IMDS Credential Theft via Server-Side Request Forgery

web_injection_logic Difficulty 1–5 30 min

SSRF via PDF Renderer: Headless Browser Exploitation for Internal Service Access via HTML Injection

web_injection_logic Difficulty 1–5 30 min

SSRF via webhook

web_injection_logic Difficulty 1–5 30 min

SSRF Filter Bypass: IP Encoding, URL Redirection and Parser Confusion for Blocklist Evasion

web_injection_logic Difficulty 1–5 30 min

DNS rebinding (simulated)

web_injection_logic Difficulty 1–5 30 min

Gopher Protocol SSRF: Arbitrary TCP Payload Injection for Redis, Memcached and FastCGI Exploitation

web_injection_logic Difficulty 1–5 30 min

SSRF → Redis (mocked)

web_injection_logic Difficulty 1–5 30 min

SSRF → internal admin

web_injection_logic Difficulty 1–5 30 min

Unrestricted file upload

web_injection_logic Difficulty 1–5 30 min

Extension bypass

web_injection_logic Difficulty 1–5 30 min

Content-Type Bypass: MIME Sniffing and Type Header Manipulation for Upload Restriction Evasion

web_injection_logic Difficulty 1–5 30 min

Zip Slip Path Traversal: Archive Extraction Directory Escape for Server-Side File System Write

web_injection_logic Difficulty 1–5 30 min

Archive bomb (simulated)

web_injection_logic Difficulty 1–5 30 min

Insecure deserialization (generic)

web_injection_logic Difficulty 1–5 30 min

PHAR deserialization (simulated)

web_injection_logic Difficulty 1–5 30 min

Pickle deserialization

web_injection_logic Difficulty 1–5 30 min

YAML unsafe load

web_injection_logic Difficulty 1–5 30 min

Prototype Pollution in Node.js: __proto__ Injection for Object.prototype Manipulation and RCE Gadget Chaining

web_injection_logic Difficulty 1–5 30 min

Race condition

web_injection_logic Difficulty 1–5 30 min

TOCTOU

web_injection_logic Difficulty 1–5 30 min

Double-spend

web_injection_logic Difficulty 1–5 30 min

Coupon stacking

web_injection_logic Difficulty 1–5 30 min

Quantity manipulation

web_injection_logic Difficulty 1–5 30 min

Order status tampering

web_injection_logic Difficulty 1–5 30 min

Payment bypass

web_injection_logic Difficulty 1–5 30 min

Feature flag abuse

web_injection_logic Difficulty 1–5 30 min

Logic-Based Privilege Escalation: Exploiting Flawed Business Rules for Unauthorized Role Promotion

web_injection_logic Difficulty 1–5 30 min

API Rate Limit Bypass: Request Throttling Circumvention via Header Manipulation and IP Rotation

web_injection_logic Difficulty 1–5 30 min

Pagination bypass

web_injection_logic Difficulty 1–5 30 min

Batch endpoint abuse

web_injection_logic Difficulty 1–5 30 min

Swagger exposed secrets

web_injection_logic Difficulty 1–5 30 min

API key leakage

web_injection_logic Difficulty 1–5 30 min

PNG metadata stego

web_injection_logic Difficulty 1–5 30 min

WAV LSB stego

web_injection_logic Difficulty 1–5 30 min

Nested archive

web_injection_logic Difficulty 1–5 30 min

Weak zip password

web_injection_logic Difficulty 1–5 30 min

Verifying Cryptographic Log Integrity by Detecting SHA-256 Hash Chain Breaks

web_injection_logic Difficulty 1–5 30 min

Detecting Log Injection Attacks Through CRLF Forensics and Entry Authenticity Analysis

web_injection_logic Difficulty 1–5 30 min

Detecting Timestamp Manipulation via MFT and NTP Cross-Correlation Sequence Analysis

web_injection_logic Difficulty 1–5 30 min

Reconstructing Event Timelines from Log Rotation Artifacts and Surviving Log Fragments

web_injection_logic Difficulty 1–5 30 min

Detecting Pass-the-Hash Attacks via NTLM Logon and Multi-Source Log Correlation

web_injection_logic Difficulty 1–5 30 min

Identifying Service-Based Persistence Through New Service Anomaly and Baseline Comparison

web_injection_logic Difficulty 1–5 30 min

Correlating Brute-Force Authentication Failures with Successful Lateral Pivot Events

web_injection_logic Difficulty 1–5 30 min

Identifying Base-Encoded Chunk Queries in DNS Exfiltration Log Records

web_injection_logic Difficulty 1–5 30 min

Tracing SUID Binary Exploitation via Setuid Syscall and Privilege Transition Correlation

web_injection_logic Difficulty 1–5 30 min

Detecting Cron-Based Persistence via Scheduled Task Forensics and Download-Execute Patterns

web_injection_logic Difficulty 1–5 30 min

Detecting Unauthorized Group Membership Changes via Privilege Escalation Audit Logs

web_injection_logic Difficulty 1–5 30 min

Binary, Reverse Engineering and Crypto for Pentesters

50 cards

Advanced Multi-Layer Encoding with Compression: gzip/zlib Layer Identification and Programmatic Decoding

reverse_engineering Difficulty 1–5 30 min

Custom VM Obfuscation Reversal: Dispatcher Loop Analysis and Python Disassembler Construction

reverse_engineering Difficulty 1–5 30 min

Password check

reverse_engineering Difficulty 1–5 30 min

License key generation

reverse_engineering Difficulty 1–5 30 min

Simple Buffer Overflow Without Protections: Return Address Overwrite and Program Flow Redirection

reverse_engineering Difficulty 1–5 30 min

ret2libc on x86-64: GOT-Based libc Leak, ROP Gadget Setup and system("/bin/sh") Invocation

reverse_engineering Difficulty 1–5 30 min

ROP Chain Construction: Gadget Chaining for execve Syscall with Stack Alignment and Bad-Byte Avoidance

reverse_engineering Difficulty 1–5 30 min

Canary Brute-Force on Forking Servers: Byte-by-Byte Enumeration Exploiting fork() Memory Inheritance

reverse_engineering Difficulty 1–5 30 min

Advanced GOT Overwrite: 64-Bit Multi-Byte %hn/%hhn Writes with Null-Byte Bypass

binary_exploitation Difficulty 1–5 30 min

Format String Arbitrary Write: Exploiting %n for GOT Overwrite and Code Redirection

binary_exploitation Difficulty 1–5 30 min

Integer Truncation Exploitation: 64-to-32-Bit Narrowing, Size Check Bypass and Memory Corruption

binary_exploitation Difficulty 1–5 30 min

Signed/Unsigned Confusion Exploitation: Negative Index Underflow and Memory Corruption via Sign Mismatch

binary_exploitation Difficulty 1–5 30 min

Advanced seccomp Bypass: 32-Bit int 0x80 Syscall Table Exploitation Outside 64-Bit Filter Coverage

binary_exploitation Difficulty 1–5 30 min

Docker Volume Misconfiguration: Sensitive Host Path Exposure and Container-to-Host Escalation

binary_exploitation Difficulty 1–5 30 min

Privileged Container Escape: Linux Capability Abuse and Host Device Access for Breakout

binary_exploitation Difficulty 1–5 30 min

Kubernetes Dashboard Unauthenticated Access: Pod Creation, Secret Enumeration and Admin Escalation

binary_exploitation Difficulty 1–5 30 min

Kubernetes RBAC Privilege Escalation: ClusterRoleBinding Abuse and Service Account Token Misuse

binary_exploitation Difficulty 1–5 30 min

Kubernetes Secret Enumeration in Cluster: Namespace Traversal and Sensitive Data Extraction

binary_exploitation Difficulty 1–5 30 min

Kubernetes Service Account Abuse: Token-Based API Access and Lateral Movement Within Cluster

binary_exploitation Difficulty 1–5 30 min

IAM policy misconfig

binary_exploitation Difficulty 1–5 30 min

Recovering RSA Private Keys from Malformed Signatures via Fault Injection

encoding_crypto_classical Difficulty 1–5 30 min

Detecting Length-Extension and Forgery Flaws in Custom MAC Implementations

encoding_crypto_classical Difficulty 1–5 30 min

JWT Algorithm Confusion Attack: Exploiting Key Confusion and Asymmetric Misuse

encoding_crypto_classical Difficulty 1–5 30 min

Exploiting Insecure Key Exchange Protocols via Man-in-the-Middle Parameter Manipulation

crypto_symmetric_kdf Difficulty 1–5 30 min

Diffie-Hellman Small Subgroup Confinement Attack: Key Recovery via Order Manipulation

crypto_symmetric_kdf Difficulty 1–5 30 min

Forging Session Tokens via Weak PRNG: Exploiting Insufficient Entropy in Identifiers

crypto_symmetric_kdf Difficulty 1–5 30 min

Blind SQLi login

crypto_symmetric_kdf Difficulty 1–5 30 min

Boolean-based auth flaw

crypto_symmetric_kdf Difficulty 1–5 30 min

Weak password policy exploit

crypto_symmetric_kdf Difficulty 1–5 30 min

Account lockout bypass

crypto_symmetric_kdf Difficulty 1–5 30 min

2FA logic flaw

crypto_asymmetric Difficulty 1–5 30 min

OTP Reuse (Static Artifact): Time-Based OTP Replay and Rate Limit Bypass Techniques

crypto_asymmetric Difficulty 1–5 30 min

JWT Algorithm None (Static Artifact): Unsigned JWT Token Forgery for Authentication Bypass

crypto_asymmetric Difficulty 1–5 30 min

JWT Key Confusion (Static Artifact): Public Key as HMAC Secret for Token Signature Forgery

crypto_asymmetric Difficulty 1–5 30 min

JWT Kid Injection (Static Artifact): Key Identifier Header Exploitation for Signature Bypass

crypto_asymmetric Difficulty 1–5 30 min

Session hijacking

crypto_tokens_protocols Difficulty 1–5 30 min

Cookie Tampering (Static Artifact): Session Cookie Forgery and Authentication Bypass Techniques

crypto_tokens_protocols Difficulty 1–5 30 min

HMAC secret brute force

crypto_tokens_protocols Difficulty 1–5 30 min

Insecure remember-me token

crypto_tokens_protocols Difficulty 1–5 30 min

OAuth misconfiguration

crypto_tokens_protocols Difficulty 1–5 30 min

Email verification bypass

crypto_tokens_protocols Difficulty 1–5 30 min

Analyzing Kerberoasting PCAP Captures via TGS-REQ Identification and Hashcat Ticket Extraction

binary_exploitation Difficulty 1–5 30 min

Decrypting TLS Traffic via SSLKEYLOGFILE Integration and Encrypted Session Reconstruction

binary_exploitation Difficulty 1–5 30 min

Analyzing gRPC PCAP Captures via HTTP/2 Stream Identification and Protobuf Parameter Extraction

binary_exploitation Difficulty 1–5 30 min

one_gadget Exploitation: Single libc Shell Gadget Identification and Constraint-Satisfying Invocation

encoding_crypto_classical Difficulty 1–5 30 min

Stack Pivot Technique: RSP Redirection to Attacker-Controlled Memory for Extended ROP Chain Execution

crypto_asymmetric Difficulty 1–5 30 min

Tcache Poisoning: fd Pointer Corruption for Arbitrary Allocation in glibc 2.27+ Heap

crypto_tokens_protocols Difficulty 1–5 30 min

PDF metadata forensics

crypto_tokens_protocols Difficulty 1–5 30 min

PDF comment stream forensics

crypto_symmetric_kdf Difficulty 1–5 30 min

PDF hidden text layer forensics

crypto_symmetric_kdf Difficulty 1–5 30 min

Cloud, Containers and Offensive Capstone

30 cards

Vigenère Cipher Cryptanalysis: Kasiski Examination and Index of Coincidence Attack

cloud_container_security Difficulty 1–5 30 min

Cracking Columnar Transposition Ciphers: Key-Length Detection and Column Reordering

cloud_container_security Difficulty 1–5 30 min

AES-ECB Block Alignment Attack: Exploiting Deterministic Encryption for Oracle Leakage

cloud_container_security Difficulty 1–5 30 min

CBC Padding Oracle Attack: Byte-by-Byte Plaintext Recovery via PKCS#7 Error Responses

cloud_container_security Difficulty 1–5 30 min

AES-CTR Nonce Reuse Attack: XOR-Based Keystream Recovery and Plaintext Decryption

cloud_container_security Difficulty 1–5 30 min

Exploiting Symmetric Key Reuse Across Users: Cross-Account Ciphertext Oracle Attacks

cloud_container_security Difficulty 1–5 30 min

Extracting Hardcoded Symmetric Keys from Binaries via Static Reverse Engineering

cloud_container_security Difficulty 1–5 30 min

Attacking Weak Key Derivation Functions: Dictionary Attacks on Under-Iterated Password Hashing

cloud_container_security Difficulty 1–5 30 min

XOR Keystream Reuse Attack: Many-Time Pad Cryptanalysis and Statistical Key Recovery

cloud_container_security Difficulty 1–5 30 min

Cracking RSA Small Public Exponents: Cube-Root Recovery and Low-Exponent Bias

cloud_container_security Difficulty 1–5 30 min

RSA Broadcast Attack: CRT-Based Plaintext Recovery Across Multiple Recipients

cloud_container_security Difficulty 1–5 30 min

Factoring Weak RSA Primes via Fermat Factorisation and Pollard p-1 Method

cloud_container_security Difficulty 1–5 30 min

GraphQL Token Abuse (Static Artifact): Authentication Bypass via GraphQL Operation Manipulation

logic_reasoning Difficulty 1–5 30 min

PASETO Weak Key (Static Artifact): Brute-Force Recovery of Low-Entropy PASETO Symmetric Keys

logic_reasoning Difficulty 1–5 30 min

Text whitespace steganography

logic_reasoning Difficulty 1–5 30 min

Text acrostic steganography

logic_reasoning Difficulty 1–5 30 min

ZIP archive forensics

logic_reasoning Difficulty 1–5 30 min

WAV spectrogram stego

cloud_container_security Difficulty 1–5 30 min

WAV echo stego

cloud_container_security Difficulty 1–5 30 min

LSB RGB stego

cloud_container_security Difficulty 1–5 30 min

Bit plane image stego

cloud_container_security Difficulty 1–5 30 min

Alpha channel LSB stego

cloud_container_security Difficulty 1–5 30 min

XOR two-image stego

cloud_container_security Difficulty 1–5 30 min

DCT block image stego

cloud_container_security Difficulty 1–5 30 min

Recovering Wide Strings (UTF-16LE) from Memory: C2 URL and Credential Extraction via Volatility

cloud_container_security Difficulty 1–5 30 min

Detecting XOR-Encoded Payloads in Memory Dumps: Entropy Analysis and Brute-Force Key Recovery

cloud_container_security Difficulty 1–5 30 min

Underground Forum-to-Pastebin OSINT Pivot: Alias Correlation and Leaked Document Discovery

osint_soc_enrichment Difficulty 1–5 30 min

Email-to-S3 OSINT Pivot: SMTP Reconnaissance Chaining to Cloud Storage Data Exposure

osint_soc_enrichment Difficulty 1–5 30 min

WHOIS-to-Employee OSINT Chain: Domain Registration Pivoting to Internal Staff Identification

osint_soc_enrichment Difficulty 1–5 30 min

Social-to-Chat OSINT Pivot: Instagram-to-Messaging Platform Identity Correlation

osint_soc_enrichment Difficulty 1–5 30 min
🏅

CTFFactory Penetration Tester — Practitioner

Practitioner credential — awarded upon completion