该程序下载地址:
链接:https://pan.baidu.com/s/1Wh033pBJObAPDtK4x-ZBYg
提取码:kjq3
复制这段内容后打开百度网盘手机App,操作更方便哦
[CrackMe]一个关于读取文件并进行运算的CrackMe
1. 首先,我们先打开该文件,什么都没输入,就显示注册错误,一脸懵逼...
2. 之后,我们使用OD打开该程序,跳转到该界面暂停,然后通过栈回溯到程序的执行主流程。
3. 查看上面,似乎读取一个名为 "KeyFile.dat"的文件,如果打开失败则执行这里。
4. 我们直接使用IDA工具来分析这个文件
5. 我们继续执行正确流程,发现其对读取字节数有要求,必须不低于10h(16)个。
6. 我们再来解析执行流程:
如下图所示,因此,我们想要保证注册成功,必须在 KeyFile.dat 文件中保证其总字符数不低于16个,且出现G的格式不低于8个,这样才会成功。
7. 根据如上要求,我们在 CrackMe.exe目录下构造有关文件,直接全部用'G'填充。之后运行程序,则发现程序破解成功。
8. 解题收获:破解程序的本质就是要走正确流程,发现哪个条件不满足再回头去找其满足的条件,不要陷入错误的逻辑中出不来!!!