Reverse Engineering, simplified
How to understand what a program does without its source code, to reach the condition that reveals the secret.
- Track
- CTF challenges
- Estimated time
- 30 min
- Level
- Intermediate
Before this lesson
Reverse engineering is understanding how a program works without having its source code, by reading its compiled image or tracing its behaviour while it runs. In CTF challenges you are given a small program that asks for a word or a key, and you must understand the checking logic inside it to reach the correct input. This lesson builds on the Linux and command-line basics and presents the idea simply: how to begin, the first tools, and how to read the logic without drowning in detail. Every program in our labs is harmless: it reads an input and prints a result only.
Labs
A key built from numbers
SolvedEasyDownload
Read the logic and decode the number array to recover the password, the flag.
Enter the labLockedAn XOR check
SolvedMediumDownload
Recover the valid license by reversing the XOR on the embedded ciphertext.
Enter the labLockedThe master stash guard
SolvedHardDownload
Invert both stages on the target to recover the master stash code, the flag.
Enter the labLockedA tiny-VM lock
SolvedHardDownload
Trace the VM program and invert its ops on the target to recover the flag.
Enter the labLocked
