rayicy 发表于 2006-11-15 16:57:51

Mouse Wheel Control 2.01 简单标志位追踪暴破过程

软件名称:Mouse Wheel Control 2.01
软件大小:259KB
软件语言:英文
软件类别:国外软件/共享版/鼠标键盘
运行环境:Win9x/Me/NT/2000/XP/2003
加入时间:2006-7-28 17:06:48
下载地址:http://gz.onlinedown.net/soft/7609.htm
                  http://www.ardamax.com/
暴破工具:PEiD,OD,XCell
软件介绍:
鼠标滚轮控制软件 - Mouse Wheel Control,让您能够针对不同的应用程序,充分自订鼠标滚轮之上下滚动动作之快捷键组合,这样一来,您就不会因为误触滚轮,而造成许多程序使用时的不变,也可加快工作的速度!

暴破过程:
一、PEiD查得软件Nothing found *,个人认为无壳。
二、OD载入程序,运行获取错误提示超极字串搜索找到:
+++++++++++++
超级字串参考+      , 条目 55
地址=004053D0
反汇编=PUSH MWC.0041E4A4
文本字串=registration code or name is invalid. please check all fields.
++++++++++
双击来到:
+++++
004053C9|> \6A 30         PUSH 30       //鼠标点击这里时发现跳来这里的连接~
004053CB|.68 34E44100   PUSH MWC.0041E434                        ;mouse wheel control
004053D0|.68 A4E44100   PUSH MWC.0041E4A4                        ;registration code or name is invalid. please check all fields.
——————————
00405363|.E8 06FFFFFF   CALL MWC.0040526E         ; \MWC.0040526E   
//所以我们下断这个Call进行标志位跟踪!
00405368|.85C0          TEST EAX,EAX    //这里有个标志位检测!为0测注册失败!
0040536A|.74 5D         JE SHORT MWC.004053C9                  
;关键跳转~ //就是它跳到错误提示处的。
+++++++++++++=
跟进关键Call00405363来到:
0040526E/$55            PUSH EBP
0040526F|.8BEC          MOV EBP,ESP
00405271|.81EC 08010000 SUB ESP,108
00405277|.A1 6C304200   MOV EAX,DWORD PTR DS:
0040527C|.33C5          XOR EAX,EBP
0040527E|.8945 FC       MOV DWORD PTR SS:,EAX
00405281|.53            PUSH EBX
00405282|.56            PUSH ESI
00405283|.57            PUSH EDI
00405284|.33C0          XOR EAX,EAX                              ;EAX清零~
00405286|.8D4D 08       LEA ECX,DWORD PTR SS:
00405289|.E8 C4C4FFFF   CALL MWC.00401752
0040528E|.50            PUSH EAX                                 ; /Arg1
0040528F|.8D9D F8FEFFFF LEA EBX,DWORD PTR SS:         ; |
00405295|.E8 5BFFFFFF   CALL MWC.004051F5                        ; \MWC.004051F5
0040529A|.8BC3          MOV EAX,EBX   ; 这里浮现软件的注册码,可做内存注册机。
0040529C|.50            PUSH EAX                                 ; /String2
0040529D|.FF75 0C       PUSH DWORD PTR SS:                ; |String1
004052A0|.FF15 F0C14100 CALL DWORD PTR DS:[<&KERNEL32.lstrcmpA>] ; \lstrcmpA
004052A6|.8BF8          MOV EDI,EAX                              ;EDI=EAX
004052A8|.F7DF          NEG EDI            ;取补(求一个数的相反数的补码.)
004052AA|.1BFF          SBB EDI,EDI
004052AC|.8D75 08       LEA ESI,DWORD PTR SS:
004052AF|.47            INC EDI                                  ;EDI+1
004052B0|.E8 07C5FFFF   CALL MWC.004017BC
004052B5|.8D75 0C       LEA ESI,DWORD PTR SS:    //这里出来EAX=1
004052B8|.E8 FFC4FFFF   CALL MWC.004017BC
004052BD|.8B4D FC       MOV ECX,DWORD PTR SS://EAX还是等于1
004052C0      8BC7          MOV EAX,EDI                              
;EDI送EAX,注册错误的话,EDI送的是0,所以NOP之~程序至此暴破成功!
004052C2|.5F            POP EDI
004052C3|.5E            POP ESI
004052C4|.33CD          XOR ECX,EBP
004052C6|.5B            POP EBX
004052C7|.E8 01D10000   CALL MWC.004123CD
004052CC|.C9            LEAVE
004052CD\.C2 0800       RETN 8

rayicy 发表于 2006-11-16 14:48:30

因为没有仔细看论坛的贴,没有发现有老大已经发了同样的东西,我感到抱歉,我不是恶意发帖的
请大家理解

小子贼野 发表于 2007-5-1 20:36:50

改成mov eax,1 ret也可以的

zeromusic 发表于 2007-5-8 17:38:32

对于我们这些新手来说也非常值得我们学习
页: [1]
查看完整版本: Mouse Wheel Control 2.01 简单标志位追踪暴破过程