= 46、InstallShield Express 2 破解心得======================================== 档案下载 http://www.installshield.com isx2tl.exe 5,156,352 bytes 其保护为 30天试用期 1.开机载入 Soft-Ice 2.执行 InstallShield Express 2 , 在未注册画面按 Purchase, 可看到 Registeration Number Unlock Code User Name Conpany Name Registeration Number 为一16位数数字, 这组数字应是安装时乱数产生的, 每一组 Registeration Number 其对应的 Unlock Code 应该只有一组. 3.Unlock Code, User Name, Conpany Name 先乱填 如 Unlock Code: 12121212 User Name: Henry Pan Conpany Name: Pank 4.切入 Soft-Ice, 用 78 大法或 bpx hmemcpy 设断点 5.按 F5 切回原画面, 然後按下 OK 键 6.Soft-Ice 拦下後, 逐步 trace (F10) 7.一直到这里 0137:10004B14 0137:10004B15 PUSH EAX 0137:10004B1A ADD ESP,04 0137:10004B1D LEA EAX,[EBP-14] 将我们输入的序号存放的位址放入 EAX 0137:10004B20 LEA ECX,[EBP-28] 将运算後产生的序号存放的位址放入 ECX, 0137:10004B23 PUSH EAX 抓到了, 就是它! 0137:10004B24 PUSH ECX 0137:10004B25 CALL 10006740 0137:10004B2A ADD ESP,08 0137:10004B2D TEST EAX,EAX 判断式(又是典型的 TEST EAX,EAX) 0137:10004B2F JNZ 10004B84 这里不能跳跃, 也就是 EAX=0 才注册成功 0137:10004B31 LEA EAX,[EBP-14] 8.将 ECX 位址内容 DUMP 出来, 下指令 D ECX, 大概会看到如下: 013F:006FF104 33 39 35 31 38 35 33 39 35 31 38 35 33 39 35 31 3951853951853951 013F:006FF114 XX XX XX XX 31 32 31 32 31 32 31 32 XX XX XX XX ....12121212.... 其中 3951853951853951 就是注册码啦, 而 12121212 是之前乱输入的 Unlock Code 当然注册码因 Unlock Code 而异, 不是真的就是 3951853951853951 为什么不要直接改判断式那一段程式码呢? (将 JNZ 10004B84 改成两个NOP) 因为改完後 虽然能通过, 但下次启动程式时, 仍会出现未注册画面. 经过比对注册前後的档案, 结果是会把注册资讯存在 isx2.tsf 档, 而每次启动程式都会 检查, 改判断式只是看起来通过, 但事实上并没有把注册资讯写入 isx2.tsf, 所以下次启 动程式检查到 isx2.tsf 仍未注册, 所以又会出现未注册画面. 9.为了使每个人的 Registeration Number 都一样, 我分析了 isx2.tsf 档, 使他归 0 , 00000907: 71 48 86 43 7C 72 40 74 72 42 48 71 48 86 43 7C 只要在 isx2.tsf 的 0x907 位置填入(覆盖)这些码, 就可以使 Registeration Number 变成 0000000000000000 10.注册, 若 Registeration Number 已改成 0000000000000000, 那注册码就是 3951853951853951 另外可以直接改 isx.tsf 档 000009AC: 74 51 8B 44 84 77 43 7D 77 43 50 76 4B 8F 48 7D 只要在 isx2.tsf 的 0x9AC 位置填入(覆盖)这些码, 和填入注册码 3951853951853951 是一样的, 因为填入注册码後就是写入这些码. 改完後的 isx2.tsf 就是注册档啦! 若懒得改的话可直接到敝站抓改好的 isx2.tsf ================= 潘昌宏 (Henry Pan) BBS id:pank mailto:pank@ms12.hinet.net http://140.134.120.40/~pank/index.html