There appears to be a bug where the same buffer is used as both inputs into a memcmp |
==> |
A little curious (if you do not mind me asking), what compiler flags did you use for this? |
==> |
Really good challenge! Thank you. |
==> |
I believe the goal is to get the program to output a flag in the form "flag{...}" |
==> |
How did you code the vector operations in the function? |
==> |
I really enjoyed this. Thank you! Was the division by 2 operation intended to be a little lossy? Example, 97 / 2 = 48 and 96 / 2 = 48. |
==> |
@Danofred and @suzaku-coding, where are you getting the char needing to be 0x31 for the 7th character? The disassembly in the weird "strcmp" like function only checks index 4, 8, and 9 from what I see. It looks like one only needs xxxx4xxx0 to pass validation. |
==> |
Good introduction into GUI reversing and things that happen outside of just main. The algorithm is kind of cool too. Simple but needs a bit of critical thought. Great crackme overall and I enjoyed it. |
==> |
Really great crackme/keygen @BinaryNewbie! Really enjoyed it and it really tests static disassembly skills with the algorithm used and how it was coded. I do have to ask even though it is in the c_cpp category, did you have some custom assembly in the binary linked in or inline? Great binary and thank you for the challenge. |
==> |
Really good one for learning and practicing static analysis |
==> |
At the moment I can not beat the Matrix. Reversing it is fairly simple but the valid_key algorithm is a bit troubling. I see that the shift and multiply essentially divide by 2 and zero out the 2 least significant bits. When summed I do not see mathematically how the total that is compared can be computed with the algorithm. I know it has been solved because it is currently a lvl 3.6. Is there a way to mathematically calculate it with using brute force? |
==> |
I believe there is a subtle bug in this. Use a key with a 1 or 0x31 byte value as the last letter and see what happens. It appears the address space between the byte for the character and unsigned int are problematic when using the atoi function. |
==> |
I thought I had it haha. Is there a need to patch? I am stuck on getting something to "happen" but I can't figure out a way to trigger it without a patch since its a register mov instruction previous with an immediate value. |
==> |
Very good crackme! |
==> |
This one was really good!
flag{1w1DL1h6_1h3_b1h4Ry_5y513m} |
==> |
Interesting little twist and algorithm used. |
==> |