160个CrackMe-第四个“ajj与黑头兄!”

从前有160个CreakMe,后来….

  1. 程序分析
    首先运行程序
    这里写图片描述

输入伪码测试,Name:123456789 Serial:qqqqqqq
但是这个程序似乎除了这两个编辑框还有一个鼠标提示外就没有“确定”按钮了,怎么点也不行
我们还是看一下说明书吧

*前两天我和[CCG]的大哥Sun Bird兄闲聊时引出一个话题,
我要想想办法难为一下Sun Bird兄。
因此就用了两个半天的时间,作了一个小东东。
这个CKme与一般的软件注册过程不一样,它没有"确定"键,
当然CK这样的软件其实一点也不麻烦,没遇到过的朋友可要动动脑子了。     8)
另外这个CKme还作了一点别的手脚,不多说了,自己看着办吧。
这个软件是用Delphi编的,由于我刚学了一星期的Delphi,
有很多想法在这个小程序里没有实现,因此这个CKme应该算是比较简单的了。
如果你成功的注册了,请给我来封信好吗?谢谢!!!
还有你千万不要告诉我你只用了2分钟就搞定了,如果是这样我就。。8~~~(

                                                      ajj
                                                       2000/08/30*

好吧,那我们知道了,他是在考验我们
2. 破解思路和流程

既然没办法测试,那我们就直接看程序,因为不清楚程序的流程所以没有API可以下断点,我们就碰碰运气看看有没有字符串,“Alt + E”进入模块界面,选择“CKme”模块,在反汇编界面->右键选择->中文搜索引擎->智能搜索,找到所有字符串,翻到最下面终于找到了一个特别明显的字符串
这里写图片描述

点击进去跟随

这里写图片描述

“注册成功”的关键函数上面有三个 jnz,有两个都是向上跳的,被我注释的那个是往下跳的,而且跳到了关键函数后面,所以我们更改了这个跳转之后就爆破成功了!
把跳转 nop之后保存文件
这里写图片描述

成功破解
3. 模拟注册机,分析算法
我们成功爆破了程序,但是我们追求的不止远方和诗,还有星辰与大海不是?(滑稽脸)所以~来看一下他的正确的Name/Serial
运行爆破程序时已经得知,图片是被鼠标左键点击之后才会显示,所以我们看一下程序的导出表。
本以为可以通过SendMessageA下断点找到关键函数,但是好像下不了断点,bp SendMessageA,这个命令不管用。那我们还用老方法,找到关键函数
这里写图片描述

从程序中得知 “cmp dword ptr ds:[esi + 0x30c], 0x85”,这行程序是重要的跳转条件,但是esi + 0x30c这个地址在何时被设置我没有找到….可能是因为OD对Delphi能力有限把…算了这次就放过他了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值