Challenge list
Identify Intrusion Time from File Timestamps
Analyze the modification times of the files in evidence/ to identify when the intrusion occurred and which hidden…
Find Process in Memory Dump
memory.dump is a simplified text of memory-analysis output (pslist / psscan / cmdline). Find the suspicious process…
Rainbow Table Attack
Unsalted fast password hashes can often be reversed with precomputed lookup databases. Reverse the given MD5 hash. MD5…
One-Time Pad Key Reuse Attack
A one-time pad is safe only when the key is used once. Reusing the key lets known plaintext recover other plaintexts.…
Predictable Randomness
Pseudo-random output with a fixed seed is reproducible and must not be used for cryptographic secrets. Flag generation…
Recover Deleted Files
Recover the deleted compressed file (ZIP) from the disk image and find the flag in the memo inside it. Learn how to…
Breaking Small RSA Keys
Factor a tiny RSA modulus, recover the private exponent, and decrypt a list of ciphertext values. Public key and…
Cryptanalysis - Breaking the Affine Cipher
ciphertext.txt is an English report encrypted with the affine cipher E(x) = (a*x + b) mod 26. Letter case is preserved…
Message Hidden in Image LSB
Extract the message hidden in the LSB (Least Significant Bit) of a PNG file. Learn the basics of steganography…
Extract Session Cookies from Chrome
You are given `/challenge/Cookies` and `/challenge/History` (both SQLite) taken from a Linux Chrome profile. The…
Detect DNS Tunneling
Analyze the DNS query log `dns_queries.log` to detect data exfiltration via DNS tunneling. Find the host flooding a…
Linux-Capabilities. Privilege Escalation Beyond SUID
A specific binary on this system has Linux capabilities assigned to it. Investigate a privilege escalation technique…
Linux-SUID Exploit. Escalating Privileges via the find Binary
A copy of the find command with the SUID bit set exists on this system. Use a well-known GTFOBins technique to obtain…
Linux-Proc Memory. Peeking at a Process's Environment
A daemon process runs continuously in the background, with the flag set as one of its environment variables.…
Linux-Strace. Tracing System Calls to Expose a File
A binary that leaves nothing in standard output or on disk is provided. It reads a key from a hidden file,…
Linux-Race Condition. Exploiting a TOCTOU Gap for Root Files
A cleanup script that root runs periodically has a gap (TOCTOU) between checking and acting on a file. Try exploiting…
Find Deleted File Traces in NTFS $MFT
You are given `/challenge/mft_records.txt`, the `$MFT` of the Windows machine `KINOCO-WS07` written out as per-record…
Detect Brute-Force Attack in Event Logs
Analyze the sshd authentication log `/challenge/auth.log` of the server `kinoco-srv01` and identify the session of the…
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…