Cybersecurity CTF challenges
Choose a domain and difficulty, inspect the evidence, and verify each conclusion in a safe environment.
LinuxLevel 1Linux-Process Basics. Checking a sleep Command's Arguments
Find the process with the target command-line argument among several processes running in the background. This…
LinuxLevel 1Linux-Deep Search. Discovering a Deeply Nested File
A single file containing the flag is hidden deep inside many nested directories. Use the find command to locate the…
LinuxLevel 1Linux-Environment Variable Basics. Checking Shell Startup Variables
One of the environment variables set when the shell starts holds the flag. Check it with the env command or echo…
LinuxLevel 1Linux Basics - Permissions and SUID
Learn basic Linux commands and file permissions. Use hints to find SUID and retrieve the flag.
WebLevel 1SQL Injection 101
This login form has an SQL Injection vulnerability. Log in as admin without proper credentials and retrieve the flag.
WebLevel 1Web-04. The robots.txt Trap
Websites often serve a robots.txt file for crawlers. In this challenge, check whether a file that robots.txt tells…
WebLevel 1Web-05. Directory Listing Trap
When an Nginx server has directory index listing (autoindex) enabled, anyone can browse the full file listing of a…
WebLevel 1Web-06. Forging HTTP Headers
This application grants access based on the value of a specific HTTP header. Even values the browser never sends by…
WebLevel 1Web-07. Tampering with URL Parameters
This page checks a URL GET parameter's value using client-side JavaScript and reveals a flag when the condition is…
WebLevel 1Web-08. Tampering with POST Data
The login form contains a hidden input field that is invisible in the rendered page. Inspect it with developer tools…
WebLevel 1Web-09. The Weak Basic Auth Trap
A protected area is guarded by HTTP Basic Authentication, but the developer accidentally left the credentials in an…
WebLevel 1Web-10. Peeking Behind a Redirect
Accessing a certain page immediately redirects you elsewhere. Browsers automatically follow redirects, so think about…
WebLevel 1XSS Basics - Guestbook
This web application has a basic XSS vulnerability. Find where input is reflected in the guestbook and retrieve the…
CryptographyLevel 2AES-ECB Mode Weakness
ECB leaks repeated block patterns. This introductory task first checks the difference between encryption and encoding.…
ProgrammingLevel 2API Requests - Find the Highest-Profit Trade
Start the stock API on localhost:9102, find the transaction with the largest sell_price - buy_price across all…
ForensicsLevel 2Find Attack in Apache Logs
Analyze Apache access.log to find traces of SQL injection attacks. Learn log analysis and pattern matching. Provided…
General SkillsLevel 2Bash Scripting - Power of Automation
/app/numbers.txt contains numbers from 1 to 1000, one per line. Extract all numbers that satisfy these conditions and…
ForensicsLevel 2Flag Hidden in Excel Macro
Analyze the macro code embedded in the Excel file to find the flag. Learn how to analyze Office document macros.…
General SkillsLevel 2Git Detective - Lost Commit
/app/repo is a Git repository. A developer accidentally deleted a commit containing important information. Use git…
General SkillsLevel 2JSON Master - Data Extraction
/app/users.json contains information of 100 users in JSON format. Extract users that meet these conditions: - age…
LinuxLevel 2Linux-02. Privilege Escalation via a Sudo-Allowed Vim
Check which commands a regular user can run via sudo without a password. A well-known GTFOBins technique can let you…
LinuxLevel 2Linux-03. Reading Cron Configuration Files
This system has several cron configurations (/etc/cron.d, /etc/crontab, user crontabs, and more). Inspect each…
LinuxLevel 2Linux-Cron Privesc. Hijacking a Writable Root Script
Check the permissions of a cron script that root executes periodically. If a regular user can write to it, think about…
LinuxLevel 2Linux-Systemd. Checking a Service Unit's Environment Variable
A systemd unit file can set environment variables in its [Service] section. Inspect the registered service definition…