pwn.college
DojosLeaderboardCommunity
LoginRegister
Back to program-security

Reverse Engineering

program-security
0/36 challenges completed

Reverse Engineering Resources

Reverse Engineering: Introduction
Video
Slides
Reverse Engineering: Functions and Frames
Video
Slides
Reverse Engineering: Data Access
Video
Slides
Reverse Engineering: Static Tools
Video
Slides
Reverse Engineering: Dynamic Tools
Video
Slides
Reverse Engineering: Real-world Applications
Video
Slides
Other Resources
Useful Tools

Reverse Engineering Class Streams

Follow along with a live class with the same demo as the instructor!

Reversing with Rob Class Stream
Video
Patriot CTF 2022 - String Cheese

Crackmes

The classic reverse engineering challenge is a "crackme", where you are given a binary that will check whether or not you have provided the correct license key.

1
Terrible Token (Easy)
2
Terrible Token (Hard)
3
Tangled Ticket (Easy)
4
Tangled Ticket (Hard)
5
Bit Bender
6
Substitution Sorcery
7
Meager Mangler (Easy)
8
Meager Mangler (Hard)
9
Monstrous Mangler (Easy)
10
Monstrous Mangler (Hard)

Patching

When working with a binaries, sometimes you may want to change the behavior of the binary itself. This can be accomplished by patching the binary. Patching is the process of changing the assembly instructions in the binary to change its behavior. The following set of challenges will allow you to patch a limited number of bytes in the binary at runtime to change its behavior.

11
Patched Up (Easy)
12
Patched Up (Hard)
13
Puzzle Patch (Easy)
14
Puzzle Patch (Hard)
15
Patch Perfect (Easy)
16
Patch Perfect (Hard)

Yan85

Yan85 is a virtual machine and obfuscation engine. It is designed to be a simple, yet powerful, virtual machine that can be used to obfuscate code. The following set of challenges leverage the Yan85 virtual machine. Early time spent understanding how this virtual machine works will pay off in future challenges that use Yan85.

17
Trust the Yancode (Easy)
18
Trust the Yancode (Hard)
19
Know the Yancode (Easy)
20
Know the Yancode (Hard)
21
Master the Yancode (Easy)
22
Master the Yancode (Hard)
23
Transcend the Yancode (Easy)
24
Transcend the Yancode (Hard)
25
The Yanalyzer (Easy)
26
The Yanalyzer (Hard)
27
The Yangler (Easy)
28
The Yangler (Hard)
29
Yancraft (Easy)
30
Yancraft (Hard)
31
Yansanity (Easy)
32
Yansanity (Hard)

Cows and Bulls

Cows and Bulls is a classic code-breaking game where the objective is to correctly guess a random number. This set of challenges will require you to reverse engineer a binary that plays this guessing game with you. Be warned, winning the game (and in turn, getting the flag) may not be as easy as it seems!

33
When the Cow Says Moo
34
Predictable Migration
35
Hashing Heifers
36
Salty Stampede