Hey, I will be honest with you. This is an elf file and I tried running it on Windows through git bash but it didn't work. Probably have to do some settings for Linux subsystem... Nevermind, it took me 4 mins 20 secs to from the time I unzipped it. IDA showed everything. So let me suppose pass is "crackmes4ever:)" then you get the input. In your "test" method you perform the check, then ask for pin (also you got a typo there in 'Correct! No enter your pin: ') which should be 0x0Fh == 10. I consider it solved and now I comment here...
Have a nice one! |
==> |
After spending 10 hours on debugging and getting a grip of what is going on, I found the checks that you are performing and even the decryption part for the success/failure messages. BUT, looking at code does not make any sense as there is no legit way of entering the "good boy" path.
You are eventually expecting length of both xor'ed strings to be equal, which cannot be true under normal circumstances as it is not being read by any input - it is hard-coded in source code.
I might be wrong but I will consider myself right until the contrary is proven. |
==> |