首页
社区
课程
招聘
[求助]调试时设置run跟踪时候程序退出,怎么解决?
发表于: 2007-10-19 15:30 6660

[求助]调试时设置run跟踪时候程序退出,怎么解决?

2007-10-19 15:30
6660
我在调试时一设置run跟踪时候,按F9时候程序立马退出了,请问是什么原因?有何解决办法?
先谢谢了

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

收藏
免费 0
支持
分享
最新回复 (10)
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
怎么这么久也没人回答呢? 急呀
2007-10-19 23:09
0
雪    币: 80
活跃值: (14)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
3
可能是做了条件判断吧,比如说定时调用IsDebuggerPresent,如果发现为TRUE,则退出。可能是这个原因,我猜的。
2007-10-20 08:53
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
不设置run跟踪时候是不会退出的
2007-10-20 09:52
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
谁弄过的帮帮忙呀
2007-10-20 14:02
0
雪    币: 494
活跃值: (629)
能力值: ( LV9,RANK:1210 )
在线值:
发帖
回帖
粉丝
6
run trace是通过设置eflags的TF位实现的,反调试代码很容易检测,如

__asm
{
    pushf
    test  dword [esp], 100h
    popf

    jnz  _debugger_detected
}
...
2007-10-20 14:53
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
[QUOTE=softworm;372917]run trace是通过设置eflags的TF位实现的,反调试代码很容易检测,如

__asm
{
    pushf
    test  dword [esp], 100h
    popf

    jnz  _debugger_detected
}
...[/QUOTE]

哪有什么应对的方法呀?
2007-10-20 15:05
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
郁闷啦,老是问题得不到解答
2007-10-21 00:57
0
雪    币: 494
活跃值: (629)
能力值: ( LV9,RANK:1210 )
在线值:
发帖
回帖
粉丝
9
我写错了,应该是

pushf
pop eax
test eax,100h

你为什么一定要用run trace?
2007-10-21 16:05
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
软件用Vm了,我想run trace分析,有啥办法搞定不让程序退出不?
2007-10-21 16:35
0
雪    币: 224
活跃值: (16)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
11
建议方法,先静态反汇编,找到反调试的代码,使用PE工具去掉,再调试
既然run trace是通过设置eflags的TF位实现的,反调试代码一定要检测的。
我没有弄过,只有这个想法供参考
2007-10-31 10:59
0
游客
登录 | 注册 方可回帖
返回
//