首页
社区
课程
招聘
[旧帖] [分享]小弟我才学破解几天苦苦想了几天才破了个简单软件希望大家给点意见 0.00雪花
发表于: 2010-4-27 23:21 1518

[旧帖] [分享]小弟我才学破解几天苦苦想了几天才破了个简单软件希望大家给点意见 0.00雪花

2010-4-27 23:21
1518
咱不没发过帖子 而且是这么大地论坛  些的不好不要笑我哦
我朋友买了个CS牛牛的收费外挂 结果进去了功能和说明的大不一样
他请我破解一下 我本来就菜他发我那挂的时候我盼望着最好不要加什么厉害的壳就好了 结果一发来查壳是PECompact 2.x -> Jeremy Collake 这壳不厉害所以用定律法就脱了
是易语言写的 查A码
Text String=krnln.fne
双击进去
00401145   .  66:C703 5C00  mov     word ptr [ebx], 5C
0040114A   >  68 23104000   push    00401023                         ; /krnln.fne
0040114F   .  8D85 FCFEFFFF lea     eax, dword ptr [ebp-104]         ; |
00401155   .  50            push    eax                              ; |ConcatString
00401156   .  E8 83000000   call    <jmp.&KERNEL32.lstrcatA>         ; \lstrcatA
0040115B   .  50            push    eax                              ; /FileName
0040115C   .  E8 77000000   call    <jmp.&KERNEL32.LoadLibraryA>     ; \LoadLibraryA
00401161   .  85C0          test    eax, eax
00401163   .  74 40         je      short 004011A5
00401165   >  8985 F8FEFFFF mov     dword ptr [ebp-108], eax
0040116B   .  68 2D104000   push    0040102D                         ; /getnewsock
00401170   .  50            push    eax                              ; |hModule
00401171   .  E8 5C000000   call    <jmp.&KERNEL32.GetProcAddress>   ; \GetProcAddress
00401176   .  85C0          test    eax, eax
00401178   .  74 20         je      short 0040119A
0040117A   .  68 E8030000   push    3E8
0040117F   .  FFD0          call    eax           //////F4

然后就F7就来到这        
10057420 >  55              push    ebp  //////////////////////F7一直下去
10057421    8BEC            mov     ebp, esp
10057423    51              push    ecx
10057424    8B45 08         mov     eax, dword ptr [ebp+8]
10057427    05 18FCFFFF     add     eax, -3E8
1005742C    83F8 03         cmp     eax, 3
1005742F    77 60           ja      short 10057491
10057431    FF2485 9C740510 jmp     dword ptr [eax*4+1005749C]
10057438    8B0D 74D00E10   mov     ecx, dword ptr [100ED074]
1005743E    41              inc     ecx
1005743F    894D 08         mov     dword ptr [ebp+8], ecx
10057442    8B55 08         mov     edx, dword ptr [ebp+8]
10057445    B8 9A970210     mov     eax, 1002979A
1005744A    8BE5            mov     esp, ebp
1005744C    5D              pop     ebp
1005744D    C2 0400         retn    4
10057450    895D 08         mov     dword ptr [ebp+8], ebx
10057453    8B15 74D00E10   mov     edx, dword ptr [100ED074]

F7一直到
00401183   . /74 15         je      short 0040119A
00401185   . |E8 00000000   call    0040118A
0040118A  /$ |810424 761E00>add     dword ptr [esp], 1E76
00401191  |. |FFD0          call    eax           ////////////////////////F4

再F7一直下去直到找到
10028CAF    55              push    ebp
10028CB0    8BEC            mov     ebp, esp
10028CB2    83EC 08         sub     esp, 8
10028CB5    53              push    ebx
10028CB6    56              push    esi
10028CB7    57              push    edi
10028CB8    894D F8         mov     dword ptr [ebp-8], ecx
10028CBB    FF15 E4330C10   call    dword ptr [<&KERNEL32.GetProcess>; kernel32.GetProcessHeap
10028CC1    8B4D F8         mov     ecx, dword ptr [ebp-8]
10028CC4    8981 8C040000   mov     dword ptr [ecx+48C], eax
10028CCA    8B55 08         mov     edx, dword ptr [ebp+8]
10028CCD    8B42 30         mov     eax, dword ptr [edx+30]
10028CD0    83E0 01         and     eax, 1
10028CD3    85C0            test    eax, eax
10028CD5    75 10           jnz     short 10028CE7
10028CD7    8B4D 08         mov     ecx, dword ptr [ebp+8]
10028CDA    51              push    ecx
10028CDB    8B4D F8         mov     ecx, dword ptr [ebp-8]
10028CDE    E8 AD060300     call    10059390
10028CE3    FFE0            jmp     eax/////////////////////这里F4一下 再F7一下再查A码
10028CE5    EB 0E           jmp     short 10028CF5
  
A码就看的到了 那个挂先给的提示是您的免费用户无法使用什么的  找到了双击进去

004295EE    837D E8 01      cmp     dword ptr [ebp-18], 1
004295F2    0F85 35000000   jnz     0042962D  ///把这跳改为JMP
004295F8    6A 00           push    0
004295FA    6A 00           push    0
004295FC    6A 00           push    0
004295FE    68 01030080     push    80000301
00429603    6A 00           push    0
00429605    68 00000000     push    0
0042960A    68 04000080     push    80000004
0042960F    6A 00           push    0
00429611    68 22364000     push    00403622                         ; 你是免费用户,
00429616    68 03000000     push    3
0042961B    BB 00030000     mov     ebx, 300
00429620    E8 F2750200     call    00450C17

把那个跳改了之后那个什么免费用户无法登入的错误提示就过了 但是下一个提示就是帐号过期请冲直
再继续查A码
奇怪的是他有两个一样的提示在A码里面  
0042CB4E   mov     eax, 0040369E                     卡类
0042CC7B   push    00403A74                          登陆失败,你的帐号已过期,请充值
0042CC97   push    004035F8                          '
0042CCA2   push    00403655                          id='
0042CCBD   mov     eax, 0040365A                     是否在线='是'
0042CCC9   mov     eax, 00403604                     admin
0042CD46   push    004035F8                          '
0042CD54   push    00403668                          硬盘id='
0042CD79   push    004035F8                          '
0042CD84   push    00403655                          id='
0042CDA3   mov     eax, 00403604                     admin
0042CDF1   push    00403A95                          过期
0042CDF9   push    00403A9A                          欢迎记日卡用户登陆\n\n你将在
0042CECE   push    00403680                          登陆失败
0042CF03   push    00403680                          登陆失败
0042CF89   mov     eax, 0040370B                     々☆
0042D1F1   push    004035F8                          '
0042D1F9   push    00403A5A                          使用者='
0042D22F   mov     eax, 00403A63                     到期时间
0042D23B   mov     eax, 0040369E                     卡类
0042D32E   push    004035F8                          '
0042D336   push    00403AB5                          到期时间='
0042D364   push    004035F8                          '
0042D36C   push    00403A5A                          使用者='
0042D39B   mov     eax, 0040369E                     卡类
0042D3E9   push    004035F8                          '
0042D3F4   push    00403655                          id='
0042D40F   mov     eax, 0040365A                     是否在线='是'
0042D41B   mov     eax, 00403604                     admin
0042D498   push    004035F8                          '
0042D4A6   push    00403668                          硬盘id='
0042D4CB   push    004035F8                          '
0042D4D6   push    00403655                          id='
0042D4F5   mov     eax, 00403604                     admin
0042D543   push    00403AC0                          次
0042D54B   push    00403AC3                          欢迎记次卡用户登陆\n\n你还可以用:
0042D620   push    00403680                          登陆失败
0042D655   push    00403680                          登陆失败
0042D68A   push    00403680                          登陆失败
0042D6BF   push    00403A74                          登陆失败,你的帐号已过期,请充值
0042D712   push    00403AE4                          正常启动自动状态.... /
0042D74B   push    00403AFB                          正常启动自动状态.... —
0042D784   push    00403B13                          正常启动自动状态.... \
0042D7CA   push    00403B2A                          正在安全运行.... /
0042D803   push    00403B3D                          正在安全运行.... —
0042D83C   push    00403B51                          正在安全运行.... \
0042DEC8   push    00403B64                          修改密码,不用填qq号
先进第一个看看 因为我是新手所以不知道进哪个 还是一个一个的看吧
        进第一个了以后就看到
0042CC5C   /0F84 35000000   je      0042CC97////这个跳改JMP
0042CC62   |6A 00           push    0
0042CC64   |6A 00           push    0
0042CC66   |6A 00           push    0
0042CC68   |68 01030080     push    80000301
0042CC6D   |6A 00           push    0
0042CC6F   |68 00000000     push    0
0042CC74   |68 04000080     push    80000004
0042CC79   |6A 00           push    0
0042CC7B   |68 743A4000     push    00403A74                         ; 登陆失败,你的帐号已过期,请充值
0042CC80   |68 03000000     push    3
0042CC85   |BB 00030000     mov     ebx, 300
0042CC8A   |E8 883F0200     call    00450C17
0042CC8F   |83C4 28         add     esp, 28

这一个改了还是过不鸟那个提示因为我先就试过 再进第2个看看

0042D56B    6A 00           push    0
0042D56D    68 00000000     push    0
0042D572    68 04000080     push    80000004
0042D577    6A 00           push    0
0042D579    8B45 EC         mov     eax, dword ptr [ebp-14]
0042D57C    85C0            test    eax, eax
0042D57E    75 05           jnz     short 0042D585
0042D580    B8 BB354000     mov     eax, 004035BB
0042D585    50              push    eax
0042D586    68 03000000     push    3
0042D58B    BB 00030000     mov     ebx, 300
0042D590    E8 82360200     call    00450C17
0042D595    83C4 28         add     esp, 28
0042D598    8B5D EC         mov     ebx, dword ptr [ebp-14]
0042D59B    85DB            test    ebx, ebx
0042D59D    74 09           je      short 0042D5A8///////这个跳改JMP
0042D59F    53              push    ebx
0042D5A0    E8 5A360200     call    00450BFF
0042D5A5    83C4 04         add     esp, 4
0042D5A8    68 02000080     push    80000002
0042D5AD    6A 00           push    0
0042D5AF    68 00000000     push    0
0042D5B4    6A 00           push    0
0042D5B6    6A 00           push    0
0042D5B8    6A 00           push    0
0042D5BA    68 01000100     push    10001
0042D5BF    68 E3000106     push    60100E3
0042D5C4    68 E4000152     push    520100E4
0042D5C9    68 03000000     push    3
0042D5CE    BB 20030000     mov     ebx, 320
0042D5D3    E8 3F360200     call    00450C17
0042D5D8    83C4 28         add     esp, 28
0042D5DB    6A 00           push    0
0042D5DD    6A 00           push    0
0042D5DF    6A 00           push    0
0042D5E1    68 01000100     push    10001
0042D5E6    68 00000106     push    6010000
0042D5EB    68 01000152     push    52010001
0042D5F0    68 02000000     push    2
0042D5F5    BB 60030000     mov     ebx, 360
0042D5FA    E8 18360200     call    00450C17
0042D5FF    83C4 1C         add     esp, 1C
0042D602    E9 30000000     jmp     0042D637
0042D607    6A 00           push    0
0042D609    6A 00           push    0
0042D60B    6A 00           push    0
0042D60D    68 01030080     push    80000301
0042D612    6A 00           push    0
0042D614    68 00000000     push    0
0042D619    68 04000080     push    80000004
0042D61E    6A 00           push    0
0042D620    68 80364000     push    00403680                         ; 登陆失败
0042D625    68 03000000     push    3
0042D62A    BB 00030000     mov     ebx, 300
0042D62F    E8 E3350200     call    00450C17
0042D634    83C4 28         add     esp, 28
0042D637    E9 30000000     jmp     0042D66C
0042D63C    6A 00           push    0
0042D63E    6A 00           push    0
0042D640    6A 00           push    0
0042D642    68 01030080     push    80000301
0042D647    6A 00           push    0
0042D649    68 00000000     push    0
0042D64E    68 04000080     push    80000004
0042D653    6A 00           push    0
0042D655    68 80364000     push    00403680                         ; 登陆失败
0042D65A    68 03000000     push    3
0042D65F    BB 00030000     mov     ebx, 300
0042D664    E8 AE350200     call    00450C17
0042D669    83C4 28         add     esp, 28
0042D66C    E9 30000000     jmp     0042D6A1
0042D671    6A 00           push    0
0042D673    6A 00           push    0
0042D675    6A 00           push    0
0042D677    68 01030080     push    80000301
0042D67C    6A 00           push    0
0042D67E    68 00000000     push    0
0042D683    68 04000080     push    80000004
0042D688    6A 00           push    0
0042D68A    68 80364000     push    00403680                         ; 登陆失败
0042D68F    68 03000000     push    3
0042D694    BB 00030000     mov     ebx, 300
0042D699    E8 79350200     call    00450C17
0042D69E    83C4 28         add     esp, 28
0042D6A1    E9 30000000     jmp     0042D6D6
0042D6A6    6A 00           push    0
0042D6A8    6A 00           push    0
0042D6AA    6A 00           push    0
0042D6AC    68 01030080     push    80000301
0042D6B1    6A 00           push    0
0042D6B3    68 00000000     push    0
0042D6B8    68 04000080     push    80000004
0042D6BD    6A 00           push    0
0042D6BF    68 743A4000     push    00403A74                         ; 登陆失败,你的帐号已过期,请充值
0042D6C4    68 03000000     push    3
0042D6C9    BB 00030000     mov     ebx, 300
0042D6CE    E8 44350200     call    00450C17
0042D6D3    83C4 28         add     esp, 28
   把上面两个跳改了之后再保存在随便输入帐号和密码都可以进 但是有点问题就是 随便输入了之后不知道怎么要多点几下登入才可以进 就是比如点4下登入它会出各种不同的提示
比如先前过掉的提示也出现了什么免费的用户无法登入 在4个提示里面只有一个提示的登入成功
其他都是错误提示 但是都没影响登入成功那个提示 我不知道怎么搞的  因为学破解才一个月不到
所以这点还不知道怎么跳才是最正确的 哪个高人可以指点下
谢谢了

[课程]FART 脱壳王!加量不加价!FART作者讲授!

收藏
免费 0
支持
分享
最新回复 (10)
雪    币: 206
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
什么都有第一次,试着再调调!
2010-4-28 00:06
0
雪    币: 76
活跃值: (25)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
3
不错,支持下。
2010-4-28 00:08
0
雪    币: 826
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
完全不懂,学习中
2010-4-28 00:39
0
雪    币: 29
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
就这样吗?太复杂了点,我看不大懂!
2010-4-28 00:40
0
雪    币: 104
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
很怀念当时在学校的时候,现在都没时间来学习了
2010-4-28 01:13
0
雪    币: 92
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
这个是不是骗人的外挂~~
2010-4-28 06:31
0
雪    币: 321
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
我感觉吧,还是得把汇编弄好了,这些东西就顺手了,
2010-4-28 07:45
0
雪    币: 111
活跃值: (29)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
有些是有内存地址标志位识别为注册成功的,有时侯在比较注册是否成功时可以用取地址读写的操作来模拟注册成功的,加上爆破,还算是可行的。
2010-4-28 09:07
0
雪    币: 7
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
学习中~~~~~
2010-4-28 09:34
0
雪    币: 74
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
挺有深度的,呵呵,看看我有多少钱啦?
2010-4-28 12:46
0
游客
登录 | 注册 方可回帖
返回
//