Perplexed - Reverse Engineering
Perplexed - Reverse Engineering
TLDR: Decompile to find good & bad addresses -> angr for binary analysis -> and then
challenge pwned!
Decompilation
The Decompilation is of the main function, it appears to be a CrackMe where if you don't enter
the correct password verified by check() , it prints "Wrong :(" otherwise it prints "Correct!!".
Solving
There is a framework we can use to automatically reverse such a program, angr. The goal here it
to get to the "Correct!! :D" while avoiding the "Wrong :(". angr here can simply reverse through
with our constraints.
A while back I authored a tool to simplify angr through a simple CLI interface which I named
qangr (ik genius) and here I used it to pretty much breeze through this challenge with it. Below is
me using it....
1 / 2 | Vipin
Perplexed - Reverse Engineering
-g - Good address (What we want to get)
-b - Bad address (What we are avoiding)
It's amazing how easy binary analysis and reverse engineering is in the modern day!
Flag: picoCTF{0n3_bi7_4t_a_7im3}
2 / 2 | Vipin