【安全新闻】逆向破解-crackme001(共160)之Acid burn

crackme系列是本人学习逆向进行实操练手系列。持续更新,高手勿喷,欢迎逆向爱好者交流学习。

软件界面:

【安全新闻】逆向破解-crackme001(共160)之Acid burn

【安全新闻】逆向破解-crackme001(共160)之Acid burn1

尝试使用字符串方式在OD查找关键点

【安全新闻】逆向破解-crackme001(共160)之Acid burn2

【安全新闻】逆向破解-crackme001(共160)之Acid burn3

发现关键跳转,打断点,运行程序,F8单步查看程序运行汇编逻辑,发现上图的并不是突破口,F8运行继续找突破口,发现以下位置

【安全新闻】逆向破解-crackme001(共160)之Acid burn4

该步骤跳转成立,此处改为NOP空指令,让程序不跳转,继续执行,破解了Serial/name部分。

【安全新闻】逆向破解-crackme001(共160)之Acid burn5

另外serial部分:

【安全新闻】逆向破解-crackme001(共160)之Acid burn6

【安全新闻】逆向破解-crackme001(共160)之Acid burn7

继续尝试寻找字符串方式定位

【安全新闻】逆向破解-crackme001(共160)之Acid burn8

该处有3个Try again,都看一下,打断点看然后跑程序,看哪里断下来,哪里就是关键位置

程序断在这个断点上了。【安全新闻】逆向破解-crackme001(共160)之Acid burn9

网上看一下,分析汇编代码,看到关键call之后进行条件判断跳转,此时把关键call下一步的条件调jnz改为空指令,尝试一下

【安全新闻】逆向破解-crackme001(共160)之Acid burn10

顺利破解

【安全新闻】逆向破解-crackme001(共160)之Acid burn11

总结

1.字符串方式寻找关键突破口

2.上下看汇编代码,在准备弹窗更早的位置进行下断点

3.汇编NOP空指令

4.以后的crackme挑战可能有不能通过字符串方式定位关键点的,可以尝试使用windows 的api进行下断。

© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享
大佬不来一句? 抢沙发

请登录后发表评论