Challenge list
Web-25. SSTI in the Greeting Card Generator
This greeting card generator is built with Flask/Jinja2 and renders the user's message directly through the template…
Algorithms - BFS Shortest Path Through a Maze
Use BFS to find the shortest path from S to E in data.txt, then submit the UDLR move sequence to challenge.py. A…
System Call Tracing - strace Debugging
Analyze `/challenge/strace.log`, a strace recording of the source-less program `/app/mystery_program`. The program…
System Log Analysis - journalctl Master
Analyze `/challenge/system.log`, a systemd journal exported in `journalctl -o short` style. Each line reads "timestamp…
Network Master - Netcat Reverse Shell
Analyze the prerecorded artifacts/netcat/callback-transcript.log without connecting to any external host; no listener…
Performance Analysis - Find the Resource Hog
Analyze the server snapshot `/challenge/metrics.log`. The first half is a top-style process table (%CPU is column 9,…
Programming - SQLite Evidence Database
evidence.db is a SQLite database built from random data at every start (in /challenge, with the tables users /…
Programming - Web Scraping Graph Traversal
site.json is a crawl result built from random data at every start (in /challenge). It holds the start and target URLs…
Programming - ZIP Password Recovery
secret.zip is a ZIP encrypted with ZipCrypto (the traditional PKWARE cipher), created at every start (in /challenge,…
Programming - Packet Log Analysis
capture.txt is a packet log created at every start (in /challenge). Each line is one flow of the form flow=<name>…
Programming - Multithreaded Result Reassembly
Analyze the parallel-job result log worker-results.jsonl, which is generated randomly at every start. Each slot was…
Programming - Memory Dump Analysis
Analyze the synthetic memory image memory.img, which is generated randomly at every start. In the heap table at the…
Programming - Known-Plaintext Attack
Analyze the evidence files ciphertext.b64 and known.txt, which are generated randomly at every start. ciphertext.b64…
Programming - Custom Protocol Parsing
protocol.bin is a binary capture created at every start (in /challenge): several length-prefixed frames that begin…
Programming - Image Steganography
image.pgm is a text-format (P2) PGM image created at every start (in /challenge). Collect the least significant bit…
Regex Expert - Data Validation
/challenge/data.txt holds 400 contact records. Each line contains an email address, a phone number, an IP address and…
Advanced Automation - Directory Monitor
`/challenge/logs/` holds access logs from four web front ends (combined log format, 60 files, over 100k lines). The…
AWS CLI - S3 Bucket Investigation
An offline export of the S3 configuration is under `/challenge/s3_audit/` (`buckets.json` plus each bucket's…
Ansible Automation - Server Configuration Management
Analyze the generated run export artifacts/ansible/vault-export.yml without running Ansible or touching a server. It…
CI/CD Security - GitHub Actions Vulnerability
Audit the 20 GitHub Actions workflows under `/challenge/repo/.github/workflows/`. Many steps carry a `# audit-ticket:…
Infrastructure as Code - Terraform Security
Analyze the generated terraform/terraform.tfstate without initializing a Terraform provider. The output…
Kubernetes Basics - Cluster Investigation
Investigate the two snapshots in artifacts/kubernetes/ (pod-snapshot.yaml and secret-snapshot.yaml) without connecting…
Linux-Kernel Module. Gaining Root via a Vulnerable Driver
This challenge analyzes a vulnerable character-device driver as a safe user-space simulation. No real kernel module is…
Linux-Buffer Overflow. Exploiting a gets() Vulnerability
A vulnerable SUID C binary with protections disabled is provided. Exploit its buffer overflow to redirect control flow…