-
-
[求助]菜鸟求助,请教下大大们,NtWaitForDebugEvent不返回,有哪几种可能..
-
发表于:
2010-4-1 18:31
6836
-
[求助]菜鸟求助,请教下大大们,NtWaitForDebugEvent不返回,有哪几种可能..
最近发现一个反调试. 当调用NtWaitForDebugEvent函数后,此函数不再返回...
当时调用时,等待时间为-1,一直等待到有调试事件...正常情况下没问题,当开起反调试后,就不再返回.
当时自己写了个很简单的小东西,以调试模式创建一个进程,之后调NtWaitFOrDebugEvent,正常情况下,进程创建成功,界面弹出来..
当开了那保护后,发现进程创建成功,但截面不会起来,卡死了,测试发现是NtWaitForDebugEvent没返回。也发现从我r3调用到内核KeWaitForMultipleObjects函数
都没有被挂钩.. 也发现DebugObject结构也没被修改..DbgkDeBugObjectType也并没有被修改.
小弟实在想不明白还有什么原因可以导致的,除了事件被清.拦截了事件,还有什么可能吗?信号被独占不放?也看了线程teb里保存信号量的地方貌似也没被修改..也看了DbgkpQueueMessage函数也没被hook,也有会被调用,有事件进来..
请各位大大知道的帮帮忙,给点提示,还能从哪里着手找出原因..在此先感谢大家..
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)