能力值:
( LV2,RANK:10 )
|
-
-
2 楼
004BE6CF /0F83 CA4A0000 jnb Project1.004C319F
改成jmp去掉注册窗口
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
不对啊。。
004BE6CF 0F db 0F
这里的代码是这样的啊。。。。。。。。。。。。。。?
能讲一下思路吗。
|
能力值:
( LV2,RANK:10 )
|
-
-
4 楼
不同的机器代码也不同的!这个我没有想起来~
等等,我整理下发出来,过程!
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
好的。
|
能力值:
( LV2,RANK:10 )
|
-
-
6 楼
004D6F38 Project1.<模块入口点> 55 push ebp
004D6F39 8BEC mov ebp,esp
004D6F3B 83C4 F0 add esp,-10
004D6F3E B8 806C4D00 mov eax,Project1.004D6C80 ; v
004D6F43 E8 84F3F2FF call Project1.004062CC 跟进
单步跟踪
---------------------
004062CC 53 push ebx ; 跟进后到这里
004062CD 8BD8 mov ebx,eax
004062CF 33C0 xor eax,eax
004062D1 A3 9C704D00 mov dword ptr ds:[4D709C],eax
004062D6 6A 00 push 0
004062D8 E8 2BFFFFFF call <jmp.&kernel32.GetModuleHandleA>
004062DD A3 64B64D00 mov dword ptr ds:[4DB664],eax
004062E2 A1 64B64D00 mov eax,dword ptr ds:[4DB664]
004062E7 A3 A8704D00 mov dword ptr ds:[4D70A8],eax
004062EC 33C0 xor eax,eax
004062EE A3 AC704D00 mov dword ptr ds:[4D70AC],eax
004062F3 33C0 xor eax,eax
004062F5 A3 B0704D00 mov dword ptr ds:[4D70B0],eax
004062FA E8 C1FFFFFF call Project1.004062C0
004062FF BA A4704D00 mov edx,Project1.004D70A4
00406304 8BC3 mov eax,ebx
00406306 E8 39DBFFFF call Project1.00403E44 ; 跟进
-----------------------
00403E44 C705 14B04D00 4412>mov dword ptr ds:[4DB014],<jmp.&kernel32.Raise>; 跟进后到这里
00403E4E C705 18B04D00 4C12>mov dword ptr ds:[4DB018],<jmp.&kernel32.RtlUn>
00403E58 A3 3CB64D00 mov dword ptr ds:[4DB63C],eax
00403E5D 33C0 xor eax,eax
00403E5F A3 40B64D00 mov dword ptr ds:[4DB640],eax
00403E64 8915 44B64D00 mov dword ptr ds:[4DB644],edx
00403E6A 8B42 04 mov eax,dword ptr ds:[edx+4]
00403E6D A3 2CB04D00 mov dword ptr ds:[4DB02C],eax
00403E72 E8 C5FEFFFF call Project1.00403D3C
00403E77 C605 34B04D00 00 mov byte ptr ds:[4DB034],0
00403E7E E8 61FFFFFF call Project1.00403DE4 ; F7跟进
----------------------------------------
00403E0A /7E 14 jle short Project1.00403E20
00403E0C |8B04DF mov eax,dword ptr ds:[edi+ebx*8]
00403E0F |43 inc ebx ; 当EBX为53跟进call eax!
00403E10 |891D 40B64D00 mov dword ptr ds:[4DB640],ebx
00403E16 |85C0 test eax,eax
00403E18 |74 02 je short Project1.00403E1C
00403E1A |FFD0 call eax ; 这个是关键call,但是不能直接改掉周围的跳转,那样程序没有办法运行!
00403E1C |3BF3 cmp esi,ebx
00403E1E ^|7F EC jg short Project1.00403E0C
-----------------------------
004BE6C8 832D 70BE4D00 01 sub dword ptr ds:[4DBE70],1 ; 这儿就到关键跳了!
004BE6CF 0F83 CA4A0000 jnb Project1.004C319F
004BE6D5 60 pushad
004BE6D6 E8 01000000 call Project1.004BE6DC
004BE6DB ^ 7F 83 jg short Project1.004BE660
004BE6DD 04 24 add al,24
004BE6DF 06 push es
004BE6E0 C3 retn
004BE6E1 66:BB 28DB mov bx,0DB28
004BE6E5 E8 01000000 call Project1.004BE6EB
004BE6EA ^ 7C 83 jl short Project1.004BE66F
------------------------------
我也是新手的,用的方法没有什么技术含量。
思路很简单的,就是排除法。单步跟过那个call的时候出现注册窗口的话,说明这个call就是是注册窗口出现的额那个call!遇到就对call下断,然后重新开始,跟进那个call。
以此循环,直到出现关键跳转!
这样一步一步的下来就可以把目标锁定的越小,中间要试着修改下你觉得是关键跳转的地方,看下修改后会不会达到自己想要的结果!
|
能力值:
( LV2,RANK:10 )
|
-
-
7 楼
没错,我就是这么跟的呀? 但是跟到了一个地方要判断好多次,56次的一个地方。就会出来对话框。我就没弄明白怎么回事,下断就会出错。
|
能力值:
( LV2,RANK:10 )
|
-
-
8 楼
对啊,关键点就是在那里,我的电脑上是在ebx为53的时候到达关键跳的!
你注意下你的是到多少的时候弹出注册窗口,然后在单步走到
00403E1A |FFD0 call eax
的时候跟进,就能看到关键跳转了!
还想问下,这个软件没有注册的地方?
|
能力值:
( LV2,RANK:10 )
|
-
-
9 楼
为53的时候???? 那为什么是为53的时候呢?????就是不明白这里。
|
能力值:
( LV2,RANK:10 )
|
-
-
10 楼
还有就是我的是在43的时候弹出窗口,我这时候跟进的却是一些数据定义,和你写的不一样呢。
|
能力值:
( LV2,RANK:10 )
|
-
-
11 楼
哦,我弄明白了,是加了花指令。。。。。。。。。。。。。。。。。。。。。
|
能力值:
( LV2,RANK:10 )
|
-
-
12 楼
这个我也不懂
学习有待进一步加强啊! 呵呵,我在学免杀的时候见过,但不知道就是这些!
|
能力值:
( LV2,RANK:10 )
|
-
-
13 楼
恩,谢谢你啊,学到了不少东西。~~
|
能力值:
( LV2,RANK:10 )
|
-
-
14 楼
不用谢,我们互相学习!
|
能力值:
( LV9,RANK:180 )
|
-
-
15 楼
UltraEdit 找十六进值 C8 E6 4B 00
改为 00 00 00 00
|
能力值:
( LV2,RANK:10 )
|
-
-
16 楼
能讲下为什么吗?
|
能力值:
( LV2,RANK:10 )
|
-
-
17 楼
为什么呢。能讲一下吗
|
能力值:
( LV9,RANK:180 )
|
-
-
18 楼
从初始函数表拿掉 此函数入口
|
能力值:
( LV2,RANK:10 )
|
-
-
19 楼
还是不懂。。。。。。是我们基础不够吧?
哎,大善人已经出神入化了。。。。。。。。。
|
能力值:
( LV9,RANK:180 )
|
-
-
20 楼
因为你这帖似乎有点违龟
是凭你这句话我是冒着生命危险帮你看的
|
能力值:
( LV2,RANK:10 )
|
-
-
21 楼
.................哪里违规了??? 我一定会请你的。~大善人
|
能力值:
( LV9,RANK:180 )
|
-
-
22 楼
回 不问年少
平常多留意一下, 很多语言都有这种 init funcs 的调用
靠一张Talbe 告诉他 start ' end.
就 loop ... if not zero then call it
ps. 短讯一天有5封的限制
|
能力值:
( LV2,RANK:10 )
|
-
-
23 楼
大善人,你在北京吗?????????????
|