Subject: [HC] 破 WinJammer v3.0 Date: Thu, 9 Jul 1998 09:37:50 +0800 (CST) From: ue83b33 今天抓到了这个软体 WinJammerSw32.zip 或是 ftp://ftp.cis.nctu.edu.tw/upload/MIDI/WinJammerSw32.zip 可用archie寻找 是一个可拨放 Midi 的软体,不是音源软体啦 大家抓一抓就知道了,再 Error Free大哥的教学文件有写到 不过是旧版的,这个是 v3.0,应该是最新的吧 要破这软体也不难啦,因为注册码会写在记忆体里 只要多多 dump,就OK了 不过我提出来是他有点奇怪,各位看看就知道了 程式一开始一执行就叫我注册啦 1:填入name,adress,code 按ctrl-d 进入 winice,下 bpx hmemcpy 按下确定,就被 winice拦住了,下 bd* ,暂停中断点 2: 追呀追呀到了 cs:0040ab8f call xxxxxxxx 或乾脆下 g 0040ab8f (但有点奇怪喔,还没破时,我重开机,第二次的位址竟然改了 再重开机一次好了,位址又回覆了... 真是怪事, 不过更有趣的是在後面...) 走过这个 call, eax=0, 我就下 r eax 1 ,看有何事发生 3: 画面一变了,看看英文,好像是旧版 update 之类的事, 按下一步了,又叫我输入一些资料,包括 e-mail address 本不想留的,输入1111111 好了, 好像不行,好吧,输入 123@456.com 可以吧,有个 @ 的符号 4: 後来还叫我存档,存就存吧, 看了一下里面的意思,竟然叫我寄到WinJammer Software 那真是开玩笑了,我怎麽可能寄呢, 我在猜,这可能是就版更新的动作吧 (不知我有无猜错) 5: 离开程式,再执行一次,又说我没注册... 好吧,反正已知道要害在哪了, cs:0040ab8f call xxxxxxxx 进入此 call,目标 : eax不等於0 就 OK了 6: 到了 cs:00405594 mov esi,[kernel32!lstrcmp] cs:0040559a push ebp cs:0040559b push eax 执行到此 ,下 d eax ,就看到注册码了 抄下来,回到winjammer 去,填入注册码,OK了 一样的动作,又要存成一个文字档... 存就存嘛,没什麽了不起的. 7: 离开程式,再进入一次,竟然又告诉我还没注册... 我开始思考, WHY,我已填入正确注册码咧. 又出现那个画面 ..... 我归纳出以下几点原因 (1) 是程式的缘故 ,可能是要寄回去才有正式版 或者是另一个版本,反正就是不会有那个提醒注册画面 (2) 我忽略了哪些地方...所以没注册成功. (3) 以上皆非 8: 後来又想说,如果下 bpx lstrcmp 会不会比较早找到要害呢? 好吧,作一次吧,因为我从未下过 bpx hmemcpy 再注册一次吧 . 但也懒懒得 ,就只是一直按F5,没按其他的 因为一直没下过 d 的指令, 所以了,记忆体的那栏还保持 同一个地方 (说到这边啊,不知各位用 Winice 的习惯如何呢? 我是一进入,按 r,再按 enter,就可看到 暂存器了,在最上面 再按 d,再按 enter,就看到记忆体的值了,不过这样做 中间会有一个区域什麽都没有,占空间嘛,就用滑鼠拉一拉 调一下区域,下面的区域又变大,再调一下好了, 我记得以前用旧一点的版本的 winice,不会这样 一开始就显示暂存器,记忆体了 ) 也就因为这样,我就一直观察记忆体了 就按f5,f5...发现记忆体的字串变了 也不知变了几次,忘了.乾脆将所有的字串记住 一个一个试 (话是这样说啦,其实我只抄了一个) 就成功了. 9: 这程式奇怪的地方就在这边 运气好才破的,其实这程式没时间的限制 把那个画面拿掉也应该不难才对... 以後若有类似得多注意一点 这是我算出来的 name:TRACY ADDRESS:TAIPEI CODE:ANXNMX4