Challenge list
02. Hidden Secret - Base64 Decode
Base64 is an encoding method used to transmit binary data as text. It's not encryption, but it's often used for…
09. Python Automation - File Reading
In security work, programming is essential for processing large amounts of data. In this challenge, you'll use Python…
11. Decode the Caesar Cipher
The Caesar cipher is one of the oldest classical ciphers used by Julius Caesar. It encrypts by shifting alphabet…
14. ROT13 Magic
ROT13 (Rotate 13) is a type of Caesar cipher that shifts the alphabet by 13 letters. Interesting feature of ROT13:…
AES-ECB Mode Weakness
ECB leaks repeated block patterns. This introductory task first checks the difference between encryption and encoding.…
API Requests - Find the Highest-Profit Trade
When the container starts, a stock API begins running on http://localhost:9102 (you do not need to start server.py).…
Python Practice - Bulk Base64 Stream Decoding
Every line of data.txt (about 150 lines, created at every start) is Base64. Decode line by line; when the result…
Python Practice - Conditional CSV Sales Filtering
data.txt, created at every start, is a sales CSV (transaction_id,date,product_id,amount,status,ref,notes). Several…
Python Practice - Compound JSON User Query
Examine the JSON data.txt ({"users": [...]}) created at every start. Each user has id, name, email, role, active and…
Python Practice - Target-IP Access Log Tracing
data.txt (about 1,300 lines, created at every start) is a web server access log. Extract only the requests from…
Python Automation - Bulk Base64 Decoding
Every line of data.txt (about 150 lines, created at every start) is Base64. Decode line by line; when the result…
Python Automation - CSV Sales Filtering
data.txt, created at every start, is a sales CSV (transaction_id,date,product_id,amount,status,ref,notes). Several…
Python Automation - JSON User Query
Examine the JSON data.txt ({"users": [...]}) created at every start. Each user has id, name, email, role, active and…
Python Automation - Access Log Parsing
data.txt (about 1,300 lines, created at every start) is a web server access log. Extract only the requests from…
Python Automation - Password Hash Cracking
Examine data.txt (a list of SHA-256 digests) and wordlist.txt (800 four-character lowercase alphanumeric tokens), both…
RC4 Stream Cipher Weakness
RC4 was once widely used but is now deprecated. This introductory task focuses on recognizing the provided data…
Vigenere Cipher Decryption
Decrypt a Vigenere cipher when the key length is known and retrieve the flag. Ciphertext:…
Finding Hash Collisions
MD5 collisions are practical. Hashes with broken collision resistance must not be used for security-sensitive…
Hash Length Extension Attack
Simple signatures such as hash(secret || message) can be vulnerable to length extension attacks with Merkle-Damgard…
Padding Oracle Basics
Padding oracle attacks use error differences as a plaintext recovery signal. This introductory task decodes leaked…
Programming - Bash Job Log Analysis
/challenge/jobs.log is a nightly batch log that is regenerated with random data every time the container starts. Each…
Programming - PIN Brute Force
/challenge/vault.json is a vault record that is regenerated with random data every time the container starts. It…
Programming - Hash Verification and Decryption
Analyze the evidence file artifact-manifest.json, which is generated randomly at every start. Each artifact…
Programming - Binary TLV Parsing
/challenge/capture.bin is a custom binary file that is regenerated with random data every time the container starts.…