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. |
==> |