Challenge list
Web-28. Hijacking an OAuth Authorization Code
This OAuth 2.0 authorization provider offers a login flow, but its redirect_uri validation may be weak. Investigate…
Web-29. NoSQL Injection in a MongoDB Login Form
This login portal is backed by MongoDB and builds its query directly from raw JSON username/password input.…
Web-30. Insecure Deserialization in KinoVault
A legacy backup system codenamed KinoVault reportedly serializes user session objects with Python's pickle module and…
Binary Repair - Firmware Header and CRC32
Repair firmware.bin by writing KINO at bytes 0-3 and the little-endian CRC32 of bytes 12+ at bytes 8-11. Submit the…
Programming - C2 Traffic Analysis
Analyze the synthetic log beacon.log, which is generated randomly at every start (no network connection is needed).…
Programming - Buffer Overflow Crash Analysis
Analyze the crash reports crash_01.txt to crash_06.txt, which are generated randomly at every start (they contain no…
Programming - Fuzzing Result Analysis
Analyze the fuzzing result log fuzz-results.log, which is generated randomly at every start (inputs are merely stored;…
Programming - Blockchain Event Reassembly
/challenge/blocks.json is a list of blocks from an offline development chain, regenerated with random data every time…
Programming - Rootkit View Diffing
proc_ps.txt (the userland ps output) and proc_kernel.txt (the result of walking the kernel task list directly) are…
Programming - Anomaly Detection
/challenge/requests.csv is a web API access log that is regenerated with random data every time the container starts…
Programming - Pentest Finding Analysis
findings.json is a scan result built from random data at every start (in /challenge). It has entry (edge-gw),…
Programming - Async Scan Result Analysis
/challenge/scan-events.jsonl is the event log of an asynchronous port scanner, regenerated with random data every time…
Linux-eBPF Rootkit. Unmasking a Hidden Process
This challenge safely recreates eBPF-rootkit investigation as offline evidence analysis. Without loading eBPF, tell…
Linux-Kernel Exploit. Rewriting a Read-Only File with Dirty COW
This challenge models mmap, MAP_PRIVATE, and madvise—the ingredients used by Dirty COW (CVE-2016-5195)—as a safe,…
Advanced Python - Concurrent Event DAG Correlation
events.jsonl interleaves randomly ordered events from many services and traces. Starting from the marked auth.failed…
Programming - APT Timeline Analysis
/challenge/events.jsonl combines security logs collected from several hosts and is regenerated with random data every…
Programming - AST-Based Vulnerability Detection
/challenge/corpus/*.py are Python sources for code review, regenerated with random data every time the container…
Programming - AWS Permission Analysis
/challenge/iam.json holds users, groups and policies and /challenge/s3_objects.json lists S3 objects (bucket, key,…
Programming - IoT Firmware Analysis
Analyze the network-camera firmware image firmware.bin, which is generated randomly at every start (it contains no…
Programming - Coverage-Guided Fuzzing
Analyze the coverage-guided fuzzer run record coverage-queue.jsonl, which is generated randomly at every start (the…
Programming - Zero-Click Message Analysis
messages.ndjson is the traffic log of a messaging app, built from random data at every start (in /challenge). Each…
Programming - Timing Attack Data Analysis
timings.csv is raw timing-attack measurements built from random data at every start (in /challenge). Against a server…