Using Intel's Pin to do two simple CrackMe samples (crackme1.o and crackme2.o)
Use the google classroom.
They are programmed by other reversers as a legal way to crack software, since no intellectual property is being infringed upon.
Crackmes, reversemes and keygenmes generally have similar protection schemes and algorithms to those found in proprietary software. However, due to the wide use of packers/protectors in commercial software, many crackmes are actually more difficult as the algorithm is harder to find and track than in commercial software.
There are two binaries that you need to get passing outputs.
Specifically, when you run the binary (both binary 1 and 2) with a correct input, it will print out:
"Yes, [your input] is correct!"
where [your input] is what you provided through a command line argument.
If it is not correct, you will receive,
"No, [your input] is not correct."
Your goal is to get a proper input to get the
"Yes, [your input] is correct!"
message with your Pin tool.
1. Code of your pin tool
2. Report that includes (1) a high-level description of what you did, (2) key analysis results for identifying the correct input, (3) brief explanation of your pin tool's source code.
Can you make a pin tool that makes the program print out
"Yes, [your input] is correct!"
on any inputs.