首页
社区
课程
招聘
[旧帖] 破解外挂第二天发昨天的过程和心得 0.00雪花
发表于: 2007-4-30 07:43 8137

[旧帖] 破解外挂第二天发昨天的过程和心得 0.00雪花

2007-4-30 07:43
8137
昨天写了一大段文章 今天发一贴写写我分析的过程 还没有破解 正在摸索中
如果是这的大师请你耐心帮我看下 教教我的错误点 因为这个全凭空我自己想象的
对错不知,因为最终结果还没出来
我修改了N次后 还是失败!
如果你有经验又想对这个挂挑战的话请联系我PM我就行
这个是网络验证的外挂!

OD初始记录

call 0042c1d4  启动开始的地方             我不需要这个所以想K了

jmp 004225b1 这个地方应该是判断网络验证的地方跳上去应该就是开始网络严整模块了这个肯定也不需要了

004225E3   .  FF15 C4704300 call dword ptr ds:[<&KERNEL32.HeapAlloc>>; \HeapAlloc
004225E9   .  8BF0          mov esi,eax
004225EB   .  85F6          test esi,esi
004225ED   .  75 0D         jnz short 2.004225FC
004225EF   .  6A 12         push 12
004225F1   .  E8 56FFFFFF   call 2.0042254C
004225F6   .  59            pop ecx
004225F7   .  E9 8A010000   jmp 2.00422786
004225FC   >  893E          mov dword ptr ds:[esi],edi

这一段就是比较帐号对不对了

004272CB  |> \3935 F4934400 cmp dword ptr ds:[4493F4],esi

00427293  |.  46            inc esi

次出单步就跑起来

0042729F  |> \8D43 1E       lea eax,dword ptr ds:[ebx+1E]
Jumps from 004271CA, 004271D7

次from 何意思

7C95ED67 >  55              push ebp

这个难道是第二个模块的入口点》?

call 00422A1D  估计是关键的所在
jmp 00422786这个应该是正确后的显示方式了  就登陆了

004225ED   . /75 0D         jnz short 2.004225FC 改了不行

这个地方应该是可以暴破的地方 75改74 测试下

004225B1   > /6A 60         push 60
004225B3   . |68 B01A4400   push 2.00441AB0
004225B8   . |E8 1B040000   call 2.004229D8
004225BD   . |8365 FC 00    and dword ptr ss:[ebp-4],0
004225C1   . |8D45 90       lea eax,dword ptr ss:[ebp-70]
004225C4   . |50            push eax                                 ; /pStartupinfo
004225C5   . |FF15 E8704300 call dword ptr ds:[<&KERNEL32.GetStartup>; \GetStartupInfoA
004225CB   . |C745 FC FEFFF>mov dword ptr ss:[ebp-4],-2
004225D2   . |BF 94000000   mov edi,94
004225D7   . |57            push edi                                 ; /HeapSize => 94 (148.)
004225D8   . |6A 00         push 0                                   ; |Flags = 0
004225DA   . |8B1D E4704300 mov ebx,dword ptr ds:[<&KERNEL32.GetProc>; |kernel32.GetProcessHeap
004225E0   . |FFD3          call ebx                                 ; |[GetProcessHeap
004225E2   . |50            push eax                                 ; |hHeap
004225E3   . |FF15 C4704300 call dword ptr ds:[<&KERNEL32.HeapAlloc>>; \HeapAlloc
004225E9   . |8BF0          mov esi,eax
004225EB   . |85F6          test esi,esi
004225ED   . |75 0D         jnz short 2.004225FC
004225EF   . |6A 12         push 12
004225F1   . |E8 56FFFFFF   call 2.0042254C
004225F6   . |59            pop ecx
004225F7   . |E9 8A010000   jmp 2.00422786
004225FC   > |893E          mov dword ptr ds:[esi],edi
004225FE   . |56            push esi                                 ; /pVersionInformation
004225FF   . |FF15 68724300 call dword ptr ds:[<&KERNEL32.GetVersion>; \GetVersionExA
00422605   . |56            push esi
00422606   . |6A 00         push 0
00422608   . |85C0          test eax,eax
0042260A   . |75 0E         jnz short 2.0042261A
0042260C   . |FFD3          call ebx
0042260E   . |50            push eax                                 ; |hHeap
0042260F   . |FF15 BC704300 call dword ptr ds:[<&KERNEL32.HeapFree>] ; \HeapFree
00422615   . |E9 6C010000   jmp 2.00422786
0042261A   > |8B46 10       mov eax,dword ptr ds:[esi+10]
0042261D   . |8945 E0       mov dword ptr ss:[ebp-20],eax
00422620   . |8B46 04       mov eax,dword ptr ds:[esi+4]
00422623   . |8945 DC       mov dword ptr ss:[ebp-24],eax
00422626   . |8B46 08       mov eax,dword ptr ds:[esi+8]
00422629   . |8945 D8       mov dword ptr ss:[ebp-28],eax
0042262C   . |8B7E 0C       mov edi,dword ptr ds:[esi+C]
0042262F   . |81E7 FF7F0000 and edi,7FFF
00422635   . |FFD3          call ebx
00422637   . |50            push eax                                 ; |hHeap
00422638   . |FF15 BC704300 call dword ptr ds:[<&KERNEL32.HeapFree>] ; \HeapFree
0042263E   . |8B75 E0       mov esi,dword ptr ss:[ebp-20]
00422641   . |83FE 02       cmp esi,2
00422644   . |74 06         je short 2.0042264C
00422646   . |81CF 00800000 or edi,8000
0042264C   > |8B4D DC       mov ecx,dword ptr ss:[ebp-24]
0042264F   . |8BC1          mov eax,ecx
00422651   . |C1E0 08       shl eax,8
00422654   . |8B55 D8       mov edx,dword ptr ss:[ebp-28]
00422657   . |03C2          add eax,edx
00422659   . |8935 248F4400 mov dword ptr ds:[448F24],esi
0042265F   . |A3 2C8F4400   mov dword ptr ds:[448F2C],eax
00422664   . |890D 308F4400 mov dword ptr ds:[448F30],ecx
0042266A   . |8915 348F4400 mov dword ptr ds:[448F34],edx
00422670   . |893D 288F4400 mov dword ptr ds:[448F28],edi
00422676   . |E8 F5FEFFFF   call 2.00422570
0042267B   . |8945 E0       mov dword ptr ss:[ebp-20],eax
0042267E   . |33DB          xor ebx,ebx
00422680   . |43            inc ebx
00422681   . |53            push ebx
00422682   . |E8 02320000   call 2.00425889
00422687   . |59            pop ecx
00422688   . |85C0          test eax,eax
0042268A   . |75 08         jnz short 2.00422694
0042268C   . |6A 1C         push 1C
0042268E   . |E8 B9FEFFFF   call 2.0042254C
00422693   . |59            pop ecx
00422694   > |E8 BD540000   call 2.00427B56
00422699   . |85C0          test eax,eax
0042269B   . |75 08         jnz short 2.004226A5
0042269D   . |6A 10         push 10
0042269F   . |E8 A8FEFFFF   call 2.0042254C
004226A4   . |59            pop ecx
004226A5   > |E8 E29A0000   call 2.0042C18C
004226AA   . |895D FC       mov dword ptr ss:[ebp-4],ebx
004226AD   . |E8 9A980000   call 2.0042BF4C
004226B2   . |85C0          test eax,eax
004226B4   . |7D 08         jge short 2.004226BE
004226B6   . |6A 1B         push 1B
004226B8   . |E8 56200000   call 2.00424713
004226BD   . |59            pop ecx
004226BE   > |FF15 E0704300 call dword ptr ds:[<&KERNEL32.GetCommand>; [GetCommandLineA
004226C4   . |A3 B0AB4400   mov dword ptr ds:[44ABB0],eax
004226C9   . |E8 49970000   call 2.0042BE17
004226CE   . |A3 148F4400   mov dword ptr ds:[448F14],eax
004226D3   . |E8 86960000   call 2.0042BD5E
004226D8   . |85C0          test eax,eax
004226DA   . |7D 08         jge short 2.004226E4
004226DC   . |6A 08         push 8
004226DE   . |E8 30200000   call 2.00424713
004226E3   . |59            pop ecx
004226E4   > |E8 02940000   call 2.0042BAEB
004226E9   . |85C0          test eax,eax
004226EB   . |7D 08         jge short 2.004226F5
004226ED   . |6A 09         push 9
004226EF   . |E8 1F200000   call 2.00424713
004226F4   . |59            pop ecx
004226F5   > |53            push ebx
004226F6   . |E8 34210000   call 2.0042482F
004226FB   . |59            pop ecx
004226FC   . |85C0          test eax,eax
004226FE   . |74 07         je short 2.00422707
00422700   . |50            push eax
00422701   . |E8 0D200000   call 2.00424713
00422706   . |59            pop ecx
00422707   > |E8 82930000   call 2.0042BA8E
0042270C   . |845D BC       test byte ptr ss:[ebp-44],bl
0042270F   . |74 06         je short 2.00422717
00422711   . |0FB74D C0     movzx ecx,word ptr ss:[ebp-40]
00422715   . |EB 03         jmp short 2.0042271A
00422717   > |6A 0A         push 0A
00422719   . |59            pop ecx
0042271A   > |51            push ecx
0042271B   . |50            push eax
0042271C   . |6A 00         push 0
0042271E   . |68 00004000   push 2.00400000
00422723   . |E8 C6200100   call 2.004347EE                          ;  可疑
00422728   . |8945 E4       mov dword ptr ss:[ebp-1C],eax
0042272B   . |837D E0 00    cmp dword ptr ss:[ebp-20],0
0042272F   . |75 06         jnz short 2.00422737
00422731   . |50            push eax
00422732   . |E8 58220000   call 2.0042498F
00422737   > |E8 75220000   call 2.004249B1
0042273C   . |EB 2E         jmp short 2.0042276C
0042273E   . |8B45 EC       mov eax,dword ptr ss:[ebp-14]
00422741   . |8B08          mov ecx,dword ptr ds:[eax]
00422743   . |8B09          mov ecx,dword ptr ds:[ecx]
00422745   . |894D D4       mov dword ptr ss:[ebp-2C],ecx
00422748   . |50            push eax
00422749   . |51            push ecx
0042274A   . |E8 D0910000   call 2.0042B91F
0042274F   . |59            pop ecx
00422750   . |59            pop ecx
00422751   . |C3            retn
00422752   . |8B65 E8       mov esp,dword ptr ss:[ebp-18]
00422755   . |8B45 D4       mov eax,dword ptr ss:[ebp-2C]
00422758   . |8945 E4       mov dword ptr ss:[ebp-1C],eax
0042275B   . |837D E0 00    cmp dword ptr ss:[ebp-20],0
0042275F   . |75 06         jnz short 2.00422767
00422761   . |50            push eax
00422762   . |E8 39220000   call 2.004249A0
00422767   > |E8 54220000   call 2.004249C0
0042276C   > |C745 FC FEFFF>mov dword ptr ss:[ebp-4],-2
00422773   . |8B45 E4       mov eax,dword ptr ss:[ebp-1C]
00422776   . |EB 13         jmp short 2.0042278B
00422778   . |33C0          xor eax,eax
0042277A   . |40            inc eax
0042277B   . |C3            retn
0042277C   . |8B65 E8       mov esp,dword ptr ss:[ebp-18]
0042277F   . |C745 FC FEFFF>mov dword ptr ss:[ebp-4],-2
00422786   > |B8 FF000000   mov eax,0FF
0042278B     |E8 8D020000   call 2.00422A1D
00422790     |C3            retn
00422791 >   |E8 3E9A0000   call 2.0042C1D4                          ;  (初始化 cpu 选择状态)
00422796    ^\E9 16FEFFFF   jmp 2.004225B1

这一大端都是讲到验证的
0042C1D4      55            push ebp                           ;  启动后的CALL F7跟进的位置

00422723   .  E8 C6200100   call 2.004347EE                    ;  可疑

00422728   .  8945 E4       mov dword ptr ss:[ebp-1C],eax

0042C20F      8B75 FC       mov esi,dword ptr ss:[ebp-4]

[注意]APP应用上架合规检测服务,协助应用顺利上架!

收藏
免费 0
支持
分享
最新回复 (5)
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
寄存器的信息 上面一快是启动时候 下面是按F9后的结果
004225DA   .  8B1D E4704300 mov ebx,dword ptr ds:[<&KERNEL32.GetProc>; |kernel32.GetProcessHeap

EAX 00000016
ECX 00000005
EDX 0000021A
EBX 00000000
ESP 0012EB98
EBP 0012EBDC
ESI 7FFDF000
EDI 20000000
EIP 7C95ED54 ntdll.KiFastSystemCallRet
C 0  ES 0023 32位 0(FFFFFFFF)
P 1  CS 001B 32位 0(FFFFFFFF)
A 0  SS 0023 32位 0(FFFFFFFF)
Z 1  DS 0023 32位 0(FFFFFFFF)
S 0  FS 003B 32位 7FFDF000(FFF)
T 0  GS 0000 NULL
D 0
O 0  LastErr ERROR_MOD_NOT_FOUND (0000007E)
EFL 00000246 (NO,NB,E,BE,NS,PE,GE,LE)
ST0 empty -UNORM FF70 0070A001 F6487368
ST1 empty 1.8525110036731524740e+3964
ST2 empty 0.0000020311483024590e-4933
ST3 empty -1.8627447041675018410e+583
ST4 empty 4.5192461194086575270e+4755
ST5 empty 5.0308878102286171660e-4932
ST6 empty +UNORM 00A3 00000000 00000000
ST7 empty +UNORM 00CC 00000000 00000000
               3 2 1 0      E S P U O Z D I
FST 4000  Cond 1 0 0 0  Err 0 0 0 0 0 0 0 0  (EQ)
FCW 027F  Prec NEAR,53  掩码    1 1 1 1 1 1

EAX 00000491
ECX 00BC0000 ASCII "Client UrlCache MMF Ver 5.2"
EDX 00000004
EBX 00000000
ESP 0012F05C
EBP 0012F0A0
ESI 7FFDF000
EDI 20000000
EIP 7C95ED54 ntdll.KiFastSystemCallRet
C 0  ES 0023 32位 0(FFFFFFFF)
P 1  CS 001B 32位 0(FFFFFFFF)
A 0  SS 0023 32位 0(FFFFFFFF)
Z 1  DS 0023 32位 0(FFFFFFFF)
S 0  FS 003B 32位 7FFDF000(FFF)
T 0  GS 0000 NULL
D 0
O 0  LastErr ERROR_NO_UNICODE_TRANSLATION (00000459)
EFL 00000246 (NO,NB,E,BE,NS,PE,GE,LE)
MM0 000A 246A 000A 246A
MM1 0000 0000 0000 0000
MM2 0000 0009 0022 0064
MM3 0000 000A 0024 0069
MM4 010A 246A 0D09 2265
MM5 0000 000A 0024 006A
MM6 ED00 0000 0000 0000
MM7 8AE0 0000 0000 0000
2007-4-30 07:44
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
我按照我自己的思路走下去,可却怎么也找不到第二个模块 也就是程序功能模块 哪个验证模块是一开始就要验证的,所以我想把一开始验证的地方给摸杀掉,让一运行直接跳到功能模块上达到破解的目的 也就不需要帐号密码直接用!还有他这个挂有热建功能,到游戏后要F12才能把功能模块显示出来,朋友说是hook ,他还有一个dll 难道这个dll是主要功能模块的 那他哪个图形也是可以在dll里实现? 那如果我不需要这个.exe 我可以不可以做一个.exe 启动这个dll 不过我知道很难办 。。哎 思路乱!! 各位请帮忙思考 !!
2007-4-30 07:56
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
好像跟你学习啊.可是看不懂.加油努力学习``
2007-4-30 15:05
0
雪    币: 195
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
发来我看看!thepassion@126.com
2007-4-30 15:58
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
给我也试试。

jackfun@163.com
2007-4-30 16:27
0
游客
登录 | 注册 方可回帖
返回
//