• 标 题:到ddxia那里下载的ACiD_BuRN2的crackme不知在那入手?
  • 作 者:庐之小得味
  • 时 间:2000-5-27 15:25:31
  • 链 接:http://bbs.pediy.com
  • 标 题:部分解决
  • 作 者:冰毒
  • 时 间:2000-5-28 1:48:39

运行程序,Nag显示几秒消失. 主界面出现. 输入Name,First name,Company项,面对注册码输入窗. 注册码分三段,随便填入几个数字,但是register的按钮是灰的. Hmm? 程序对输入的注册做实时比较. 只有注册码正确时,按钮才会生效.

问题是如何设断点. 试了好几个,找到一个好用的: bpx __vbar8str. 设断,F5. 马上弹回softice. 跟过一阵子,还是没有头绪. 不过,见到一些浮点运算操作指令. 于是试着下WF指令,打开浮点寄存器窗. 于是'演出开始了'.

不断地按F5,每次拦住时F12返回VB5的DLL,你就会在寄存器窗里见到一些数字, 其中有输入的注册码. 试着改变姓,名,公司名和注册码, 在softice下跟踪比较,发现有些数字是固定的: '444','777','111','27','5'. 而且数字的显示非常有规律. 先显示输入的注册码,然后一个两位数,再就是444或777或111,再就是27,接着清空. 再开始下一轮, 循环往复. 耐心分析一番以后,解决了. 不过, 去除Nag不成功,有些象WinRAM-Booster 2000的Nag. 不知哪位可以搞定. 另外作者提到的anti-smartcheck function因没装Smartcheck不能测试. 谁有兴趣,可以一试,并贴出结果.

以下是大致过程:
1. 输入 name: Break firstname: Ice company: China, Password:123 456 789
2. 切进softice, bpx __vbar8str 并下指令WF
3. F5, softice马上中断, F12, 此时ST0=123
4. F5, F12, 此时ST0=66 (name第一个字母的ASCII码值,10进制), ST1=123
5. F5, F12, 此时ST0=444 (Magic number), ST1=66, ST2=123
6. F5, 先不按F12, ST0=29304
7. F12, ST0=27 (今天是27号), ST1=29304, ST2=123
8. F10向下
<pre>
014F:0F0FDFCB  FMULP    ST(1),ST <- ST0*ST1=791208
014F:0F0FDFCD  XOR      EAX,EAX
014F:0F0FDFCF  MOV      AL,[ESI]
014F:0F0FDFD1  INC      ESI
014F:0F0FDFD2  JMP      NEAR [EAX*4+0F0FED94]
再向下
014F:0F0FD73B  CALL    `MSVBVM50!__vbaI4Str`
014F:0F0FD740  PUSH    EAX <- 5 (本月月份)
014F:0F0FD741  XOR      EAX,EAX
014F:0F0FD743  MOV      AL,[ESI]
014F:0F0FD745  INC      ESI

9. 继续F10

014F:0F0FE001  POP      ECX <- 5 (月份)
014F:0F0FE002  POP      EAX <- C12A8h=791208 (乘积)
014F:0F0FE003  CDQ   
014F:0F0FE004  IDIV    ECX <- EAX/ECX
014F:0F0FE006  PUSH    EAX <- 158241
014F:0F0FE007  XOR      EAX,EAX
014F:0F0FE009  MOV      AL,[ESI]
014F:0F0FE00B  INC      ESI
.
.
014F:0F1065F1  CALL    0F0FEC1E <- F8进
014F:0F1065F6  JMP      0F0FEA9D
看到
014F:0F0FEC1E  FXCH    <- 交换ST0和ST1的值
014F:0F0FEC20  FCOMPP  <- 比较
014F:0F0FEC22  FNSTSW  AX
014F:0F0FEC24  TEST    AL,0D
</pre>
10. Password的第2,3两部分算法一样, 只是Magic number分别为777和111.

重新输入: 158241 306293 40159 现在按钮可按了,Congratulation!

冰毒写于2000年5月27日