= 39、More Space 2.7 ! 减肥示范教材! ======================================= 哇! 这篇 More Space 2.7 一定让 Tommy 这一位新时代的大侠等了很 久. 因为这些日子都在搞 95 字型的问题, 所以比较没时间来构思破解 教材. 说到这个 More Space 这个东西, 我从 2.4 就开始追了! 但是流程很 复杂 (有点像在追 VB 的 Appz), 所以没有追到手; 2.5 的程式流程一 样没变, 所以也没追到要害. 在网上的破解注册机, 也是没看到 for More Space 的... 唉..! 曾几 何时, 在 alt.cracks 看到「More Space」这个字, 爽了老半天! 赶快 抓下来试试看... 哇! 不行! 在 alt.crack 也看有一堆人喊不行! 在某天, 在软体介绍站看见 More Space 2.6 ! 哇! 出新版了. 即使没 砍到要害, 不能使用全部功能, 也要抓新版的来用; 因为起码还有部份 功能可以用. 快马加鞭, 冲到 More Space 的主页 www.contactplus.com! 天啊! 居 然看到 2.7 ! 搞不好当你们看完本信後, 正冲到它的主页时, 就变成 2.8 啦! 不过本追纵示范, 可不一定能适用别的版本, 不相信你拿去追 2.4 or 2.5 的试试看... O.K ! 进入正题... 通常在追一个软体之前, 就是要找一个 "明显变化" and "即时可试" 的事件出来. 要找这个, 就是要多操作你的目标软体. 像是要砍之前的 先玩玩看. 先熟目标软体的操作特性, 是有助於设断的 Sense 的! 对 啦! 再问你们一次! Sense 是不是念做 "先死" ? 不过这一点我很放心, 因为会主动去砍的软体, 想必也对它唾涎有一阵 子罗! 是不是有点像追女孩子一样? 还没有说过一句话, 对方的一切周 遭, 老早就都背得滚瓜烂熟了! 至是否闭著眼睛, 就可以走到她的房间 ? 那等以後追上了, 再去求证吧! 太早求证, 会被人家骂 "猪哥" 哦! 经过对目标软体 More Space 2.7 的熟悉, 我知道在 Duplicate Files 的视窗中, 点右上角的磁碟机选择栏时, 会跳出一个小窗子来告诉你要 注册罗! 且履试不爽, 故这个小窗子就是我们的第一据点. 以前我讲过 lockmytask 有没有忘记? ..什么! 忘光啦! .. O.K! 没关 系, 反正它在今天是英雄无用武之地, 发挥不出来. 我们再换一招, 试 试 destroywindow 看看. 1.进入 More Space 2.7 的 Duplicate Files 的地盘. 2.点一下磁碟机选择栏的其中一个方格, 此时会跳出一个小窗子. 3.按 Ctrl-d , 切入 sice . 4.打 bpx destroywindow, 按 F5 返回. 5.当点一下 "OK" 时, 会被 sice 拦下来. 如下: 14F:BFF62391 MOV CL,B4 ; <- 在此拦下 JMP BFF623D7 6.按一下 F12 , 居然就到了目标领空! 如下: 14F:417BB4 RET ; <- 返回至此. 7.再按一下 F12 , 如下: 14F:423C6B CALL [EDX+68] MOV EDX,[EBP-04] ; <- 返回至此. 有没有注意到上行有个 CALL ? 通常有 CALL 时, 你就要先看看上面有 没有判断式. 有的话, 你先暂停所有的断点, 在那个 CALL 设断. 返回 程式之後, 点一下磁碟机选择栏, 被 sice 拦下来之後, 再用 F10 带 过那个 CALL , 看是不是小窗子的整个领域之 CALL . 如果不是, 则必须暂停所有的断点, 再跳到 "步骤-5" , 再按 "OK" 前 , 再把 DestroyWindow 打开. 按 "OK" 断下来後, 再一直按 F12, 直 到返回此地的上一层 CALL 为止. 8.就这样不断的重来按 F12 的往回跳, 最终你会反返回到..如下: 14F:4C079C CALL 470FF8 ; <- 在此设断试带 F10 看看. JMP ; <- 返回至此. 9.当然这个 CALL 470FF8 就是小窗子的总领空罗! 往上看有..如下: 14F:4C078E CALL 4B9378 ; <- 想必是核对总部, 进入观查. TEST AL,AL ; <- 在此设断试之.. JNZ 4C97A3 10.把先前的所有断点再暂停一次. 在 TEST AL,AL 那一行设断, 压 F5 , 回目标程式. 一点磁碟机小格, 又会被 SICE 拦下. 11.把 AL 改成 1, 试之. 试的结果, 不会跑出小窗子了, 最重要最重 要的是, 你点的磁碟机, 居然出现打勾! 12.那我们就进入那个 CALL 看看..如下: :u 4b9378 l 80 014F:004B9378 PUSH EBX PUSH ESI XOR EBX,EBX : : 13.等一等. 我们进来要干嘛? 因为我们 <步骤-9> 试 AL 时, 知道 AL=0 返回不利! 所以我们要分 析此地的 routine, 在什么情况下 , AL 才不会带 0 返回... 继续 , 如下: 014F:004B937C PUSH 00008000 CALL KERNEL32!SetErrorMode MOV ESI,EAX PUSH 004B93EC ; <- 此位址 Dump 出来看 CALL KERNEL32!LoadLibraryA ; <- 载 .DLL 档时, 大多 ; 会用到此函式. 看一 ; 此软体 Help 的注册 ; 章节. 014F:004B9392 MOV [004C2C00],EAX MOVZX EAX,SI PUSH EAX CALL KERNEL32!SetErrorMode CMP DWORD PTR [004C2C00],20 JL 004B93E4 ; <- 这里有一个判断. 014F:004B93A9 PUSH 004B93F8 MOV EAX,[004C2C00] PUSH EAX CALL KERNEL32!GetProcAddress 014F:004B93B9 MOV ESI,EAX MOV [004C3964],ESI TEST ESI,ESI JZ 004B93D9 ; <- 这里也有一个判断.. 014F:004B93C5 MOV EAX,000004D2 CALL [004C3964] CMP EAX,000004D2 JNZ 004B93D9 ; <- 这里又是一个判断. 014F:004B93D7 MOV BL,01 ; <- 01 ? 生命之泉! 4B93D9 MOV EAX,[004C2C00] PUSH EAX CALL KERNEL32!FreeLibrary ; 把 .DLL 放掉. 014F:004B93E4 MOV EAX,EBX ; 哦! 原来 EAX 是用 EBX 的 POP ESI POP EBX RET 好啦! 就讲到此为止. 要玩, 就自己看著办! 要害的总部, 已经告诉你 们了; 高手不要说答案, 留给 Hacker 新生自行单步执行练习吧! 也让 他们多啃一些组合语言的书! O.K ?...下课.... -- 喜欢破解注册资料者, 请接如下 Group, 保证让你一路爽到底 alt.crackers alt.cracks alt.binaries.warez.ibm-pc