Challenge list
Network Analysis - SSL Strip Clear-text Credentials
An SSL Strip attack downgraded HTTPS to HTTP, so the victim's credentials traveled in clear text and were captured.…
Network Analysis - Unmasking WebSocket Frames
capture.pcap records WebSocket traffic between a browser and a chat server. Every client-to-server frame is masked…
Network Analysis - Custom Protocol Decoding
Traffic from a system using a small custom binary protocol was captured. Download the packet capture (traffic.pcap),…
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…
Find Suspicious Network Connections in Memory
From the memory image of the compromised host `kinoco-app03`, the socket table `/challenge/netstat_dump.txt` and the…
Recover Executed Commands from Memory
Analyze the memory-string record `memdump.txt` to recover the executed command history. Decode the Base64 strings and…
Recover Deleted SQLite Records
You are given the SQLite database `/challenge/app.db` of the internal chat tool "kinoco-msg". The body of a message…
Decompress Multi-Layer Archive
`/challenge/artifact.xz` is a file an attacker tried to take out, wrapped many times in gzip, bzip2, xz, zip and tar.…
Decrypt Encrypted Disk
`/challenge/secret_disk.img` is a genuine LUKS2 container. Its data area holds a backup (a tar archive). The…
Cryptanalysis - RSA Common Modulus Attack
Two systems reused the same RSA modulus n and only changed the public exponent. The ciphertexts c1 and c2 of the same…
Cryptanalysis - Diffie-Hellman with a Small Prime
An old IoT device performed Diffie-Hellman key exchange with a prime p of only 36 bits. handshake.txt contains p, g, A…
Data Hidden in Audio File
`hidden.wav` hides a message encoded with on-off keying (OOK). Turn the tone on/off slots into bits and decode them to…
Extract Secret Key from Android App
Extract a safe ZIP-formatted APK fixture (evidence/app.apk) and analyze the encrypted API secret recorded in its…
Detect Unauthorized Access in CloudTrail Logs
Analyze the CloudTrail export `/challenge/cloudtrail.json` and trace the unauthorized use of a stolen access key and…
Extract Secrets from Docker Image Layers
`/challenge/image/` is an unpacked `docker save` export (OCI layout). The layers are stored in `blobs/sha256/` as…
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…