首页
社区
课程
招聘
[求助]请教一个问题
发表于: 2004-12-11 21:00 3436

[求助]请教一个问题

2004-12-11 21:00
3436
我是新手,今天研究一个程序,用OD加载以后,总是在entry point就出现非法指令的exception。如下:

用pe editor看的entry point就是00429414

00429414 > $ 47             INC EDI
00429415   .^E2 8F          LOOPD SHORT Updater.004293A6
00429417   . 50             PUSH EAX
00429418   . 4F             DEC EDI
00429419   . 4D             DEC EBP
0042941A   . 45             INC EBP
0042941B   . 0846 84        OR BYTE PTR DS:[ESI-7C],AL
0042941E   . E3 28          JECXZ SHORT Updater.00429448
00429420   . CA 4200        RETF 42                                

  ;  Far return
00429423   . 64:A1 00000000 MOV EAX,DWORD PTR FS:[0]
00429429   . 50             PUSH EAX
0042942A   . 64:8925 000000>MOV DWORD PTR FS:[0],ESP
00429431   . 83EC 58        SUB ESP,58
00429434   . 53             PUSH EBX
00429435   . 56             PUSH ESI
00429436   . 57             PUSH EDI
00429437   . 8965 E8        MOV DWORD PTR SS:[EBP-18],ESP
0042943A   .-E9 95607400    JMP 00B6F4D4

但是如果先运行后再attach,这时候再回头看入口处的代码,就是下面这样:
00429414 > $ 55             PUSH EBP
00429415   . 8BEC           MOV EBP,ESP
00429417   . 6A FF          PUSH -1
00429419   . 68 E8E14600    PUSH Updater.0046E1E8
0042941E   . 68 30CA4200    PUSH Updater.0042CA30                  

  ;  SE handler installation
00429423   . 64:A1 00000000 MOV EAX,DWORD PTR FS:[0]
00429429   . 50             PUSH EAX
0042942A   . 64:8925 000000>MOV DWORD PTR FS:[0],ESP
00429431   . 83EC 58        SUB ESP,58
00429434   . 53             PUSH EBX
00429435   . 56             PUSH ESI
00429436   . 57             PUSH EDI
00429437   . 8965 E8        MOV DWORD PTR SS:[EBP-18],ESP
0042943A   .-E9 3D2B7500    JMP 00B7BF7C

请问entry point难道不是进程被加载后执行的第一段代码吗?这种情况是怎么造成的呢?如果我想从头跟踪,有什么解决办法吗?

谢谢

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 1
支持
分享
最新回复 (1)
雪    币: 898
活跃值: (4039)
能力值: ( LV9,RANK:3410 )
在线值:
发帖
回帖
粉丝
2
XX王座的游戏吧?目前没有公开的脱壳教程
自己研究吧
2004-12-11 21:03
0
游客
登录 | 注册 方可回帖
返回
//