[CrackMe]一个关于读取文件并进行运算判断的CrackMe

Posted onetrainee

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[CrackMe]一个关于读取文件并进行运算判断的CrackMe相关的知识,希望对你有一定的参考价值。

[CrackMe]目录索引

该程序下载地址:

链接: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. 解题收获:破解程序的本质就是要走正确流程,发现哪个条件不满足再回头去找其满足的条件,不要陷入错误的逻辑中出不来!!!

 

  

 

  

  

 

以上是关于[CrackMe]一个关于读取文件并进行运算判断的CrackMe的主要内容,如果未能解决你的问题,请参考以下文章

crackme002-abexcm5

C++如何逐行读取txt文件,并将读取出来的数据进行运算导入到另一个文件中。

关于C语言读取文件结尾的问题

攻防世界 Reverse高手进阶区 3分题 crackme

攻防世界 Reverse高手进阶区 3分题 crackme

攻防世界 Reverse高手进阶区 3分题 crackme