首页
社区
课程
招聘
[求助]如何调试ZwQueueApcThread设置的回调函数
发表于: 2010-11-17 04:03 8747

[求助]如何调试ZwQueueApcThread设置的回调函数

2010-11-17 04:03
8747
最近在分析一个私壳的时候发现其会调用ZwQueueApcThread设置APC回调函数。
用OD调试的时候不知道如何设置并中断在回调函数内部。
尝试过硬件断点,貌似不起作用。

网上也找不到相关的技巧。
我不想用直接更改EIP的方式定位到APC函数内部。

是否有技巧能让系统自动调用APC回调函数?

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 0
支持
分享
最新回复 (2)
雪    币: 29
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
暂时找到了一个方法,能够断在APCProc函数的入口。不过并不是100%有效。偶尔还会跑飞。
因为OD无法附加挂起状态的进程。所以先用ICESWORD读取目标进程的入口代码与APCProc入口代码,然后修改成死循环 EB FE
接着在源程序里面F8步过ZwResumeThread
打开一个新的OD
附加目标进程。
对入口与APCProc入口下硬件执行断点。
Ctrl+E 将对应的入口处的死循环改回去。

然后F9

稍等一阵就会中断在APCProc入口。
==========================
不过因为目标进程本身就是AlertAble状态,所以可以直接激活APCProc回调函数。
但是对于那些需要激活AlertAble状态的进程,一味的等待是没有意义的。应该如何处理?

我在猜想WinDBG是否可以在本地内核模式的环境下更改目标进程的AlertAble状态。
但是具体怎么实现就不知道了。

继续期待大虾指点。
2010-11-19 04:17
0
雪    币: 29
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
继续期待大虾指点
2010-11-24 01:55
0
游客
登录 | 注册 方可回帖
返回
//