Netscape Cache Explorer 1.29 for Win95
其实这软体我以前破过了
我当时也有寄到 HC啊
不过是旧版的, v1.28
但到了v 1.29, 注册码又改了
不过只是小改变而已
1: 输入name,password,按下OK
等出现错误视窗时,
按ctrl-d进入winice,下 bpx lockmytask
bpx lockmytask 是用来拦截视窗关闭时,
但不见得是所有的视窗
,按F5返回win95,按下确定,被winice拦住
2: 按数下F12到了
cs:004256a5 call messagebpx
cs:004256aa jmp 004256ff <-停在此处
往上看要如何跳过 cs:004256a5 call
发现在 cs:00425664 mov eax, [004322c0] <- 在此设断点
cmp eax, [004322b0] <- 一定是18D
jz 004256ac
3: 再注册一次,到了 cs:00425664
被拦截下来,因为刚才有设断点了
令 eax=18d,下 r ax 18d
按F5,如此就没有那个注册失败的对话盒跑出来了
但仍是没有注册成功,可是已知道了一个线索了
4:
再注册一次,到了 cs:00425664
下 bd * (暂停断点),再下 bpm 004322c0
返回win95,任意增加或减少一个password
(但字数尽量不要少於 8个字,若少於 8个字
就不会触发 winice)
5:
返回win95,任意增加或减少一个password ,再注册一次n
触发winice, 停在
cs:0042565a mov [004322c0],eax
往上一看,
cs:00425654 call 00425953
看来这应该就是算出 eax 的 SUBROUTINE 了
在前面一些
cs:00425648 call xxxxxxx
也是很可疑的
在这两个地方设断点,再注册一次
6:
到了cs:00425648
按F8 进入观察
到了
cs:00425928 lea esi,[ebp-8]
走完了这一行
下 d esi, 可看到 刚输入的 name被扩充成 8个字
如我刚输入 TRACY,就被扩充成 TRACYTRA
如果刚输入的name超过8个字呢? 我就没试过了
在来以下的几行,就开始运算了
运算之後,产生一组 八个字的阵列
我叫他 A 阵列好了 .
这 A阵列是注册成功的关键
7:
到了 cs:00425654 call 00425953
按F8进入观察
目标是出来时,让 EAX等於 18D, 就注册成功了
有兴趣的网友可试试看,
当然了,要注册成功, A 阵列 不只一组
我算出来的是 2 3 3 6 5 4 3 2
关键就是这些地方了
我所算出来的是
name : TRACY
password: IHQVQKHP
这软体会辨别大小写
而输入password时
只看到 * ,也不知道底输入什麽,
所以要小心一点,不要输入小写字母
若想改注册的名字
用 winice中的 symbol loader 的功能
在 cs:00425928 lea esi,[ebp-8]
下 d esi 改掉 name 就行了
或是在 cs:00425977 mov al,[ebx]
下 d ebx,改掉就行了