Hmm, not sure if it takes away the fun or is just the new way of doing things... but I just used a decompiler and put the somewhat complicated looking luna function into ChatGPT - which spilled the beans. "Now give me a number that will pass it". EzPz |
==> |
This was a good one that was somewhat straight forward and easy to solve when stepping through with a debugger. However, without the debugger i think it would be more of a challenge. I think I need to spend some time looking at the disassembled code to see where the special numbers are coming from, because it wasn't clear on first glance. Thanks for the crackme. |
==> |
Thanks for the crackme. It was simple and definitely what I consider a "Level 1"; Solved in under 10 minutes. I provided a keygen under Solutions. |
==> |
Yep, that little obfuscation threw me off for a bit. Thanks for the explanation. |
==> |
Thanks @destructeur, after your tip I was able to correct the segfault and become a "good boy". I'm curious to see the source, though, because the parameters for scanf seem so weird and threw me off the trail for a bit (73 xor 3 ?). Did you purposely do this, or was this some compiler optimization? Really enjoyed the crackme, thanks. |
==> |
Is the program supposed to segfault? Is the goal to fix the segfault? |
==> |
First off, this is not a "Level 1" crackme by any stretch of the imagination. I'm a beginner and thought it was strange this was placed as a Level 1. The Anti-Debug alone makes it qualified to be at least a Level 2. On top of that, the binary is stripped!! So this is Level 2 or Level 3 in my opinion.
With that being said, I was able to learn a lot doing this challenge. I spent the last couple of weeks working on it in my free time. Probably 5 or 6 hours total, maybe more. I wasn't familiar with GDB, so I had to learn that pretty well. I didn't have the slightest clue how to get around anti-debug, so I had to learn that trick. I didn't know how to find main in a stripped binary, so I had to learn how to do that. I'm a programmer so I was able to follow the all of the inline function calls and memory manipulation pretty well, but it was still tough following all of the functions.
All in all, it was a really fun challenge and I learned a lot. I got the flag and I'm happy to finally be "Mr. Satan". But I was seriously pissed while solving this because I was looking for an easy "Level 1" challenge that a newbie like myself could solve in 30 minutes, but instead I got this crazy shit 'Much0l0k0' that the author 'paypain' put at "Level 1". I cursed his name many times solving this. But I appreciate it because in the end, I learned a lot.
If there is any interest I can put up the guide to how I solved it. Just leave a comment and let me know. |
==> |
Enjoyed the crackme. Thanks |
==> |