首页
社区
课程
招聘
[求助]OD调试如何自动跟进异常处理过程中?
发表于: 2007-11-26 21:46 5664

[求助]OD调试如何自动跟进异常处理过程中?

2007-11-26 21:46
5664
00401000 > $  8D4424 F8     lea     eax, dword ptr [esp-8]
00401004   .  64:8705 00000>xchg    dword ptr fs:[0], eax
0040100B   .  BB 2E104000   mov     ebx, 0040102E
00401010   .  53            push    ebx
00401011   .  50            push    eax
00401012   .  BE 00000000   mov     esi, 0
00401017   .  8B06          mov     eax, dword ptr [esi]
00401019   .  6A 00         push    0                                ; /Style = MB_OK|MB_APPLMODAL
0040101B   .  68 00304000   push    00403000                         ; |Title = "OK"
00401020   .  68 10304000   push    00403010                         ; |Text = "SEH Fail"
00401025   .  6A 00         push    0                                ; |hOwner = NULL
00401027   .  E8 1C000000   call    <jmp.&USER32.MessageBoxA>        ; \MessageBoxA
0040102C   .  EB 13         jmp     short 00401041
0040102E   .  6A 00         push    0                                ; /Style = MB_OK|MB_APPLMODAL
00401030   .  68 00304000   push    00403000                         ; |Title = "OK"
00401035   .  68 03304000   push    00403003                         ; |Text = "SEH Succeed "
0040103A   .  6A 00         push    0                                ; |hOwner = NULL
0040103C   .  E8 07000000   call    <jmp.&USER32.MessageBoxA>        ; \MessageBoxA
00401041   >  6A 00         push    0                                ; /ExitCode = 0
00401043   .  E8 06000000   call    <jmp.&KERNEL32.ExitProcess>      ; \ExitProcess
 
 


OD中取消非法访问内存复选框,F9运行,程序执行到00401017发生异常中断,此时按Shift+F7和Shift+F8,均转入ntdll领空,进入ntdll暂停后按Alt+F9(返回用户代码),想返回到0040102E跟踪异常处理过程,但无论如何也跟不进,程序直接跑飞了.(Ctrl+F8也不成)

请问不在0040102E上下F2断点,如何跟进异常处理过程继续调试?谢谢

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

收藏
免费 0
支持
分享
最新回复 (4)
雪    币: 86
活跃值: (34)
能力值: ( LV2,RANK:150 )
在线值:
发帖
回帖
粉丝
2
00401004   .  64:8705 00000>xchg    dword ptr fs:[0], eax
在EXE数值处下段....
异常后SHIFT+F9就行
2007-11-27 08:41
0
雪    币: 207
活跃值: (14)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
3
谢谢楼主,我的意思是不用F2提前设断点,就是用OD直接跟进.这个程序比较简单,我的意思是如果特别复杂的程序,在不知道异常处理函数的情况下如何跟进.
2007-11-27 18:01
0
雪    币: 50161
活跃值: (20615)
能力值: (RANK:350 )
在线值:
发帖
回帖
粉丝
4
要跟进系统的异常处理?
shift+F7或shift+F8 试试

另外,详细原理看看这文章:
http://bbs.pediy.com/showthread.php?threadid=10651
2007-11-27 19:06
0
雪    币: 207
活跃值: (14)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
5
谢谢版主,以前看过这个文章,时间长了没印象了,得好好再复习一遍了.谢谢
2007-11-28 00:49
0
游客
登录 | 注册 方可回帖
返回
//