|| 您现在的位置: 天下无挂网 >> 外挂文章 >> 加密破解技术 >> 外挂文章正文
:: 用户登录 ::

 
:: 专 题 栏 目 ::
:: 最新热门 ::
  • 没有热门外挂文章
  • :: 相关文章 ::
  • SuperDD外挂脱壳示例

  • api函数暴力获得

  • 传奇强力外挂脱壳破解

  • 游戏外挂破解演示
    作者:不详 文章来源:不详 点击数: 更新时间:2005-8-21

    步骤:
          1.首先应该看看这个外挂,安装好后打开外挂,需要注册,怎么办呢???随便输入几个数字吧!!!就来输入777777777777777777(个人习惯),点注册后说无效的注册码,早在预料之内,无所谓啊.就是要看他出现什么提示.
          2.抓住他的提示哦,我们现在用W32Dams来把外挂进行反汇编,然后点参考,然后点串式数据参考,在里面找到刚才的提示.双击然后点取消对话匡.好了!就到了这里:
    00407125   .  52            PUSH EDX              ********再此处下断点******* 
    00407126   .  FF15 406C4100 CALL DWORD PTR DS:[416C40]*******关键的比较语句******
    0040712C   .  85C0          TEST EAX,EAX
    0040712E   .  75 5C         JNZ SHORT CRONOUS_.0040718C
    00407130   .  6A 10         PUSH 10                                  MB_OK|MB_ICONHAND|MB_APPLMODAL
    00407132   .  68 EC614100   PUSH CRONOUS_.004161EC                  
    00407137   .  68 DC614100   PUSH CRONOUS_.004161DC  ******我们来到这里*******                  0040713C   .  50            PUSH EAX                                 

    我们来到这里,现在我往上看,看看上面有没有关键的语句 :p  
    上面00407126的call就是,这个就是关键call.通过这个call执行下面的比较和0040712e 处的跳转,而0040712e jne  SHORT CRONOUS_.0040718C 就是跳转到失败的地方,所以我们要进到00407126的call里面看看,看他个究竟.
           3.运行TRW后Ctrl+N,让它最小话,再打开外挂,再里面输入777777777777777777,注意!不要按注册啊!~~~~这个时候再按Crtl+N呼出TRW2000,下命令 bpx hmemcpy 回车,再下命令 g 回车!  好了!现在可以按确定了! 这时候TRW2000拦截住了外挂程序,当然,现在不是在外挂的领空,我们要到外挂的领空.连续按F12  60次(郁闷吧) !!!!就来到它的领空了!不要按多了啊!按多一次就要出现注册失败了!
           4.现在我们要分析程序了!准备好啊!眼睛不要花了啊!看着点!不要分心啊(是不是觉的我很废话…………) 
              还记得刚才的哪个call附近的地址吗?什么!!!!??没有记下!我晕!那就重来1--3步吧!记下哪些地址啊!记下的同志们可以继续了!我们用命令 g  00407125  回车,来到刚才哪个call的上面一行了吧!!好了!注意!我们现在要按一次F10, 一次啊!一次哦!就一次哦~~~~~~哈哈!是不是到了哪个call那行了啊???到了就好!我们再按一次F8进入到这个call中间!!!!

    我们来到这里:
    10001F10 >  81EC 88080000   SUB ESP,888       ********我们停留在这里******
    10001F16    8D8424 88000000 LEA EAX,DWORD PTR SS:[ESP+88]
    10001F1D    53              PUSH EBX
    10001F1E    55              PUSH EBP
    10001F1F    56              PUSH ESI
    10001F20    57              PUSH EDI
    10001F21    50              PUSH EAX
    10001F22    E8 09F9FFFF     CALL YLINFOSN.10001830
    10001F27    8DBC24 9C000000 LEA EDI,DWORD PTR SS:[ESP+9C]
    10001F2E    83C9 FF         OR ECX,FFFFFFFF
    10001F31    33C0            XOR EAX,EAX
    10001F33    83C4 04         ADD ESP,4
    10001F36    F2:AE           REPNE SCAS BYTE PTR ES:[EDI]
    10001F38    F7D1            NOT ECX
    10001F3A    49              DEC ECX
    10001F3B    74 0B           JE SHORT YLINFOSN.10001F48
    10001F3D    8A8424 98000000 MOV AL,BYTE PTR SS:[ESP+98]
    10001F44    84C0            TEST AL,AL
    10001F46    75 29           JNZ SHORT YLINFOSN.10001F71
    10001F48    BF E8900010     MOV EDI,YLINFOSN.100090E8                
    10001F4D    83C9 FF         OR ECX,FFFFFFFF
    10001F50    33C0            XOR EAX,EAX
    10001F52    8D9424 98000000 LEA EDX,DWORD PTR SS:[ESP+98]
    10001F59    F2:AE           REPNE SCAS BYTE PTR ES:[EDI]
    10001F5B    F7D1            NOT ECX
    10001F5D    2BF9            SUB EDI,ECX
    10001F5F    8BC1            MOV EAX,ECX
    10001F61    8BF7            MOV ESI,EDI
    10001F63    8BFA            MOV EDI,EDX
    10001F65    C1E9 02         SHR ECX,2
    10001F68    F3:A5           REP MOVS DWORD PTR ES:[EDI],DWORD PTR DS>
    10001F6A    8BC8            MOV ECX,EAX
    10001F6C    83E1 03         AND ECX,3
    10001F6F    F3:A4           REP MOVS BYTE PTR ES:[EDI],BYTE PTR DS:[>
    10001F71    8DBC24 98000000 LEA EDI,DWORD PTR SS:[ESP+98]
    10001F78    83C9 FF         OR ECX,FFFFFFFF
    10001F7B    33C0            XOR EAX,EAX
    10001F7D    BD 38900010     MOV EBP,YLINFOSN.10009038
    10001F82    F2:AE           REPNE SCAS BYTE PTR ES:[EDI]
    10001F84    F7D1            NOT ECX
    10001F86    49              DEC ECX
    10001F87    33FF            XOR EDI,EDI
    10001F89    8BD9            MOV EBX,ECX
    ……………………省略………………………………

            现在我们注意打起百分之二百的精神注意啊!尤其要注意关键的比较语句附近,我们用F10单步往下走,一直走到10001fac jl 10001f8d这个地址,这个地址又把我们送回到 10001f8d ,我们继续用f10,这时候你会发现就在这个地方做循环,当每次走到10001fa9的时候,用d ecx 看下,是不是每次都加一啊!哈哈!这也许是他内部的运算,不管,当它为循环到第6次的时候就不再执行10001fac 的跳转,而继续走,到了10001fb7的时候又返回到1000018b ,这个循环好象做5次,记不太清楚了!^0^
    不管,让他做完后继续走就好了,还是用f10走啊!不要错了!


    10001F8B    33C9            XOR ECX,ECX   ***0001fb7送我们来这里*******  
    10001F8D    8BC7            MOV EAX,EDI       ******把我们送到这里了****
    10001F8F    99              CDQ
    10001F90    F7FB            IDIV EBX
    10001F92    8A8414 98000000 MOV AL,BYTE PTR SS:[ESP+EDX+98]
    10001F99    8DB414 98000000 LEA ESI,DWORD PTR SS:[ESP+EDX+98]
    10001FA0    8A1429          MOV DL,BYTE PTR DS:[ECX+EBP]
    10001FA3    32C2            XOR AL,DL
    10001FA5    47              INC EDI
    10001FA6    41              INC ECX
    10001FA7    8806            MOV BYTE PTR DS:[ESI],AL
    10001FA9    83F9 06         CMP ECX,6                  *******用d ecx 看看*********
    10001FAC  ^ 7C DF           JL SHORT YLINFOSN.10001F8D   *******到这个地方送我们上去******
    10001FAE    83C5 06         ADD EBP,6
    10001FB1    81FD 5C900010   CMP EBP,YLINFOSN.1000905C               
    10001FB7  ^ 7C D2           JL SHORT YLINFOSN.10001F8B   ******又送我们到1000018b*****
    10001FB9    8D049D 00000000 LEA EAX,DWORD PTR DS:[EBX*4]

           后面还有跳转和循环的,都可以不用管,我们只要注意到一个地址,那就是10002090,        

    10001FC0    50              PUSH EAX
    10001FC1    E8 D9050000     CALL YLINFOSN.1000259F
    10001FC6    83C4 04         ADD ESP,4
    10001FC9    33F6            XOR ESI,ESI
    10001FCB    85DB            TEST EBX,EBX
    10001FCD    8BE8            MOV EBP,EAX
    10001FCF    7E 3E           JLE SHORT YLINFOSN.1000200F
    10001FD1    8BFB            MOV EDI,EBX
    10001FD3    81E7 01000080   AND EDI,80000001
    10001FD9    79 05           JNS SHORT YLINFOSN.10001FE0
    10001FDB    4F              DEC EDI
    10001FDC    83CF FE         OR EDI,FFFFFFFE
    10001FDF    47              INC EDI
    10001FE0    33C9            XOR ECX,ECX
    10001FE2    8BC1            MOV EAX,ECX
    10001FE4    99              CDQ
    10001FE5    F7FB            IDIV EBX
    10001FE7    33C0            XOR EAX,EAX
    10001FE9    8D1452          LEA EDX,DWORD PTR DS:[EDX+EDX*2]
    10001FEC    8A8457 38900010 MOV AL,BYTE PTR DS:[EDI+EDX*2+10009038]
    10001FF3    33D2            XOR EDX,EDX
    10001FF5    8A940C 98000000 MOV DL,BYTE PTR SS:[ESP+ECX+98]
    10001FFC    03C2            ADD EAX,EDX
    10001FFE    46              INC ESI
    10001FFF    89448D 00       MOV DWORD PTR SS:[EBP+ECX*4],EAX
    10002003    8BCE            MOV ECX,ESI
    10002005    81E1 FFFF0000   AND ECX,0FFFF
    1000200B    3BCB            CMP ECX,EBX
    1000200D  ^ 7C D3           JL SHORT YLINFOSN.10001FE2
    1000200F    33C0            XOR EAX,EAX
    10002011    B9 00010000     MOV ECX,100
    10002016    8DBC24 98040000 LEA EDI,DWORD PTR SS:[ESP+498]
    1000201D    3BD8            CMP EBX,EAX
    1000201F    F3:AB           REP STOS DWORD PTR ES:[EDI]
    10002021    894424 14       MOV DWORD PTR SS:[ESP+14],EAX
    10002025    7E 59           JLE SHORT YLINFOSN.10002080
    10002027    8B4485 00       MOV EAX,DWORD PTR SS:[EBP+EAX*4]
    1000202B    8D4C24 18       LEA ECX,DWORD PTR SS:[ESP+18]
    1000202F    50              PUSH EAX
    10002030    68 A8900010     PUSH YLINFOSN.100090A8                   
    10002035    51              PUSH ECX
    10002036    E8 95020000     CALL YLINFOSN.100022D0
    1000203B    8D7C24 24       LEA EDI,DWORD PTR SS:[ESP+24]
    1000203F    83C9 FF         OR ECX,FFFFFFFF
    10002042    33C0            XOR EAX,EAX
    10002044    83C4 0C         ADD ESP,0C
    10002047    F2:AE           REPNE SCAS BYTE PTR ES:[EDI]
    10002049    F7D1            NOT ECX
    1000204B    2BF9            SUB EDI,ECX
    1000204D    8D9424 98040000 LEA EDX,DWORD PTR SS:[ESP+498]
    10002054    8BF7            MOV ESI,EDI
    10002056    8BFA            MOV EDI,EDX
    10002058    8BD1            MOV EDX,ECX
    1000205A    83C9 FF         OR ECX,FFFFFFFF
    1000205D    F2:AE           REPNE SCAS BYTE PTR ES:[EDI]
    1000205F    8BCA            MOV ECX,EDX
    10002061    4F              DEC EDI
    10002062    C1E9 02         SHR ECX,2
    10002065    8B4424 14       MOV EAX,DWORD PTR SS:[ESP+14]
    10002069    F3:A5           REP MOVS DWORD PTR ES:[EDI],DWORD PTR DS>
    1000206B    8BCA            MOV ECX,EDX
    1000206D    83E1 03         AND ECX,3
    10002070    40              INC EAX
    10002071    894424 14       MOV DWORD PTR SS:[ESP+14],EAX
    10002075    25 FFFF0000     AND EAX,0FFFF
    1000207A    3BC3            CMP EAX,EBX
    1000207C    F3:A4           REP MOVS BYTE PTR ES:[EDI],BYTE PTR DS:[>
    1000207E  ^ 7C A7           JL SHORT YLINFOSN.10002027
    10002080    55              PUSH EBP
    10002081    E8 0E050000     CALL YLINFOSN.10002594
    10002086    8BBC24 A0080000 MOV EDI,DWORD PTR SS:[ESP+8A0]
    1000208D    83C4 04         ADD ESP,4
    10002090    8BF7            MOV ESI,EDI                ****这里的是你输入的注册号****
    10002092    8D8424 98040000 LEA EAX,DWORD PTR SS:[ESP+498]  
    10002099    8A10            MOV DL,BYTE PTR DS:[EAX]
    1000209B    8A1E            MOV BL,BYTE PTR DS:[ESI]
    1000209D    8ACA            MOV CL,DL
    1000209F    3AD3            CMP DL,BL
    100020A1    75 1E           JNZ SHORT YLINFOSN.100020C1
    100020A3    84C9            TEST CL,CL
    100020A5    74 16           JE SHORT YLINFOSN.100020BD
    100020A7    8A50 01         MOV DL,BYTE PTR DS:[EAX+1]
    100020AA    8A5E 01         MOV BL,BYTE PTR DS:[ESI+1]
    100020AD    8ACA            MOV CL,DL
    100020AF    3AD3            CMP DL,BL
    100020B1    75 0E           JNZ SHORT YLINFOSN.100020C1
    100020B3    83C0 02         ADD EAX,2
    100020B6    83C6 02         ADD ESI,2
    100020B9    84C9            TEST CL,CL
    100020BB  ^ 75 DC           JNZ SHORT YLINFOSN.10002099
    100020BD    33C0            XOR EAX,EAX
    100020BF    EB 05           JMP SHORT YLINFOSN.100020C6
    100020C1    1BC0            SBB EAX,EAX      *****这里注册号码出现*****
    100020C3    83D8 FF         SBB EAX,-1
    100020C6    85C0            TEST EAX,EAX
    100020C8    74 0F           JE SHORT YLINFOSN.100020D9
    100020CA    5F              POP EDI
    100020CB    5E              POP ESI
    100020CC    5D              POP EBP
    100020CD    33C0            XOR EAX,EAX
    100020CF    5B              POP EBX
    100020D0    81C4 88080000   ADD ESP,888
    100020D6    C2 0400         RETN 4
            在10002090处 用 d 命令看看, 是不是发现你输入的注册码,注意,可能真的注册码就在附近.f10到了100020c1下面行下命令 d eax 是不是看见了一串数字啊??我的是:6112812514210115187219,你们的可要你们自己看了啊!

    外挂文章录入:admin    责任编辑:admin 
  • 上一篇外挂文章:

  • 下一篇外挂文章:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口

    点击申请点击申请点击申请点击申请点击申请点击申请
    点击申请点击申请点击申请点击申请点击申请点击申请点击申请

    版权所有 Copyright? 2004-2008 天下无挂科技网 网站维护:GHOST
    网站域名:http://www.watxwg.com
    客服邮箱:txwgwa@163.com
    客服电话:13810978321
    客服 Q Q:12439470