160个CrackMe-第八个“语言障碍”

从前有160个CreakMe,后来….
1.首先打开程序界面,输入伪码验证
key:123456789
这里写图片描述
之所以叫语言障碍是因为这个程序中的注释、标题什么的都是不能很清楚的理解的语言,很像英语,也可能就是英语

2.程序破解思路和流程
用OD打开程序,输入伪码测试
key:123456789
点击OK键,弹出一个窗口,提示信息告诉我们key是错误的,再仔细看看
这里写图片描述

既然弹出了窗口,我们进入OD直接“Alt + K”,找到堆栈信息窗口
这里写图片描述

我们要找到作者的程序调用这个函数的地址,所以右键点击最后一个“rtcMsgBox”->显示调用

这里写图片描述

显示调用之后返回到高亮的这行,再往上看,好像看到了我们输入错误key之后弹出的提示信息,再上面还有两行字符串,仔细看来挺像key输入争取之后的提示信息的,如果是的话,我们再往上找找关键跳转,直接nop掉就可以暴力破解了

这里写图片描述

我们发现有一个je直接跳过了成功提示信息,跑到了错误提示信息的位置,我们只需要把它nop掉

这里写图片描述

da~da~
成功爆破!

3.注册码分析过程
既然我们找到了关键跳转,那么key的验证函数肯定在关键跳转的上面不远处,我们仔细看一下

这里写图片描述
找到了一个 strcmp函数,而且参数一共有两个,一个是我们输入的key,另外一个是“SynTaX 2oo1”,很有可能这个字符串就是真正的key,输入试一下

这里写图片描述
果真成功,那我们得知,他的key是一个固定不变的值“SynTaX 2oo1”

总结:看代码的时候应该心平气和,不能太浮躁,之前的strcmp这个函数一直没有找到就是因为太着急,只顾着看代码的逻辑,没有关心注释而浪费了好多时间

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值