首页
社区
课程
招聘
[旧帖] [讨论]请教各位高手如何跳过这句提示 0.00雪花
发表于: 2008-5-1 10:35 3813

[旧帖] [讨论]请教各位高手如何跳过这句提示 0.00雪花

2008-5-1 10:35
3813
004114F7    68 CC474400     push    004447CC     ; 用名密码不对,登陆失败
请教如何跳过上面这句,我试过直接JMP到登陆成功,运行后一显示登陆成功但进不去

004114B1    33C0            xor     eax, eax
004114B3    8A87 3C194100   mov     al, byte ptr ds:[edi+41193C]
004114B9    FF2485 D8184100 jmp     dword ptr ds:[eax*4+4118D8]      ; 程序.004114C0
004114C0    68 E8474400     push    004447E8                ; 登陆成功
004114C5    8D8E 03050000   lea     ecx, dword ptr ds:[esi+503]
004114CB    E8 EE280200     call    <jmp.&mfc42.#6199>
004114D0    8B4C24 14       mov     ecx, dword ptr ss:[esp+14]
004114D4    51              push    ecx
004114D5    8BCE            mov     ecx, esi
004114D7    E8 340D0000     call    00412210
004114DC    6A 1F           push    1F
004114DE    8BCE            mov     ecx, esi
004114E0    E8 0B0A0000     call    00411EF0
004114E5    5F              pop     edi                    ; kernel32.7C816FD7
004114E6    5E              pop     esi                     ; kernel32.7C816FD7
004114E7    B8 01000000     mov     eax, 1
004114EC    5B              pop     ebx                ; kernel32.7C816FD7
004114ED    C2 0800         retn    8
004114F0    6A 01           push    1
004114F2    E8 D3280200     call    <jmp.&mfc42.#2642>
004114F7    68 CC474400     push    004447CC        ; 用名密码不对,登陆失败
004114FC    E9 BE030000     jmp     004118BF
00411501    6A 00           push    0
00411503    E8 C2280200     call    <jmp.&mfc42.#2642>
00411508    68 B4474400     push    004447B4           ; 服务器忙,请再试!
0041150D    E9 AD030000     jmp     004118BF
00411512    6A 00           push    0
00411514    E8 B1280200     call    <jmp.&mfc42.#2642>
00411519    68 90474400     push    00444790       ; 登陆次数过多,登陆失败!
0041151E    E9 9C030000     jmp     004118BF
00411523    6A 00           push    0
00411525    E8 A0280200     call    <jmp.&mfc42.#2642>
0041152A    68 6C474400     push    0044476C        ; 无法使用,请下载最新版!
0041152F    E9 8B030000     jmp     004118BF
00411534    68 5C474400     push    0044475C       ; 更新数据文件.
00411539    8D8E 03050000   lea     ecx, dword ptr ds:[esi+503]
0041153F    E8 7A280200     call    <jmp.&mfc42.#6199>
00411544    8B56 20         mov     edx, dword ptr ds:[esi+20]
00411547    6A 00           push    0
00411549    68 F4010000     push    1F4
0041154E    80C3 02         add     bl, 2
00411551    6A 01           push    1
00411553    52              push    edx                              ; ntdll.KiFastSystemCallRet
00411554    889E B4030000   mov     byte ptr ds:[esi+3B4], bl
0041155A    C786 A8030000 0>mov     dword ptr ds:[esi+3A8], 0
00411564    FF15 74874700   call    dword ptr ds:[<&user32.SetTimer>>; USER32.SetTimer
0041156A    8BCE            mov     ecx, esi
0041156C    E8 5F0B0000     call    004120D0
00411571    5F              pop     edi             ; kernel32.7C816FD7
00411572    5E              pop     esi            ; kernel32.7C816FD7
00411573    B8 01000000     mov     eax, 1
00411578    5B              pop     ebx            ; kernel32.7C816FD7
00411579    C2 0800         retn    8
0041157C    68 44474400     push    00444744   ; 数据文件更新已经完成.

[培训]《安卓高级研修班(网课)》月薪三万计划,掌握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法

上传的附件:
收藏
免费 0
支持
分享
最新回复 (6)
雪    币: 424
活跃值: (10)
能力值: ( LV9,RANK:850 )
在线值:
发帖
回帖
粉丝
2
004114A5    81FF C7000000   cmp     edi, 0C7
004114AB    0F87 19040000   ja      004118CA
004114B1    33C0            xor     eax, eax
004114B3    8A87 3C194100   mov     al, byte ptr ds:[edi+41193C]
004114B9    FF2485 D8184100 jmp     dword ptr ds:[eax*4+4118D8]      ;

//   switch case
//  你试下
//  [eax*4+4118D8] ,
//  你查一下4118d8里的内容是什么,再运算一下,算出  N = eax*4+4118D8
//  [N]是不是等于下面的登陆成功的位置(4114c0),如果等于的话,记下算出的eax,
//  在上面的这句 mov     al, byte ptr ds:[edi+41193C]打补丁

程序.004114C0
004114C0    68 E8474400     push    004447E8                ; 登陆成功
004114C5    8D8E 03050000   lea     ecx, dword ptr ds:[esi+503]
004114CB    E8 EE280200     call    <jmp.&mfc42.#6199>
004114D0    8B4C24 14       mov     ecx, dword ptr ss:[esp+14]
004114D4    51              push    ecx
004114D5    8BCE            mov     ecx, esi
004114D7    E8 340D0000     call    00412210
004114DC    6A 1F           push    1F
004114DE    8BCE            mov     ecx, esi
004114E0    E8 0B0A0000     call    00411EF0
004114E5    5F              pop     edi                    ; kernel32.7C816FD7
004114E6    5E              pop     esi                     ; kernel32.7C816FD7
004114E7    B8 01000000     mov     eax, 1
004114EC    5B              pop     ebx                ; kernel32.7C816FD7
004114ED    C2 0800         retn    8
004114F0    6A 01           push    1
004114F2    E8 D3280200     call    <jmp.&mfc42.#2642>
004114F7    68 CC474400     push    004447CC        ; 用名密码不对,登陆失败
2008-5-1 18:29
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
还是没弄下来,附件放上来高手请点一下
2008-5-2 11:52
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
看来真的有难度,先顶起来来。
2008-5-3 15:57
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
004114B1    33C0            xor     eax, eax
004114B3    8A87 3C194100   mov     al, byte ptr ds:[edi+41193C]
004114B9    FF2485 D8184100 jmp     dword ptr ds:[eax*4+4118D8]      ; 程序.004114C0
004114C0    68 E8474400     push    004447E8                ; 登陆成功
004114C5    8D8E 03050000   lea     ecx, dword ptr ds:[esi+503]
004114CB    E8 EE280200     call    <jmp.&mfc42.#6199>
004114D0    8B4C24 14       mov     ecx, dword ptr ss:[esp+14]
004114D4    51              push    ecx
004114D5    8BCE            mov     ecx, esi
004114D7    E8 340D0000     call    00412210
004114DC    6A 1F           push    1F
004114DE    8BCE            mov     ecx, esi
004114E0    E8 0B0A0000     call    00411EF0
004114E5    5F              pop     edi                    ; kernel32.7C816FD7
004114E6    5E              pop     esi                     ; kernel32.7C816FD7
004114E7    B8 01000000     mov     eax, 1
004114EC    5B              pop     ebx                ; kernel32.7C816FD7
004114ED    C2 0800         retn    8
004114F0    6A 01           push    1
004114F2    E8 D3280200     call    <jmp.&mfc42.#2642>
004114F7    68 CC474400     push    004447CC        ; 用名密码不对,登陆失败

如果eax*4+4118D8=004114C0就登陆成功,
而004114B1    33C0            xor     eax, eax 把eax清零
这样 eax=al=edi+41193C
也就是说[edi+41193C]*4+4118D8要=004114C0,
算出eax的值是多少的时候会jmp 004114C0
再通过004114B3    8A87 3C194100   mov     al, byte ptr ds:[edi+41193C]这句将这个值传给eax应该可以了,2楼己经说的蛮清楚了
2008-5-3 16:43
0
雪    币: 317
活跃值: (93)
能力值: ( LV9,RANK:140 )
在线值:
发帖
回帖
粉丝
6
改失败上的关键跳就OK啦
2008-5-3 17:07
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
我现在还看不懂
2008-5-6 20:41
0
游客
登录 | 注册 方可回帖
返回
//