首页
社区
课程
招聘
[讨论]多核心下的 int 1 hook 时有效时无效的问题
发表于: 2013-6-23 19:45 4840

[讨论]多核心下的 int 1 hook 时有效时无效的问题

2013-6-23 19:45
4840


此贴纯属吐槽.

最近 抄论坛的 hook int 1 且 改写DX寄存器来进行hook.

结果呢,hook是成功了,只是有时有效果,有时没效果.

调试了2天啊,我去,:eekmad:没有用调试器来跟踪啊,因为比较讨厌虚拟机,syserdbg的话,
本身就依赖int 1).

一直想啊想,一直试啊试, 终于发现问题了.

原来是多核的问题,每个cpu都有自己的Dx寄存器,必须
KeSetAffinityThread (KeGetCurrentThread (), i) 来将每个cpu都一一进行设置.


总结:遇到困难,且成功解决,又进步了不是一点点.

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

收藏
免费 0
支持
分享
最新回复 (5)
雪    币: 228
活跃值: (115)
能力值: ( LV5,RANK:70 )
在线值:
发帖
回帖
粉丝
2
一个CPU 一套中断!!!再来VMW+WINDBG OR VMW +VS2012!!无鸭梨

然后!!!求代码!!!!
2013-6-23 19:47
0
雪    币: 297
活跃值: (120)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
3
遇到诡异问题时候,最好的办法冷静下来,总览全局,转变思路,虽然这么说,但是开发到火急火燎的时候,想做到这点真的很难~ ,尤其一个问题,明明以前这样做可以过,但是现在就出问题了,特别容易喷火,冷静不下来
2013-6-23 19:55
0
雪    币: 371
活跃值: (72)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
4
求代码是什么意思?自己搜索去...
2013-6-23 20:00
0
雪    币: 220
活跃值: (117)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
5
KeSetAffinityThread (KeGetCurrentThread (), i)
卧槽..设置自己的进程为某CPU独占...然后循环设置来改写寄存器么...果然蛋疼...

不过看起来很有效.. 坐等大牛教导..
2013-6-26 10:38
0
雪    币: 952
活跃值: (1826)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
KeSetAffinityThread (KeGetCurrentThread (), 1 << i)  这样才对
2013-6-26 10:52
0
游客
登录 | 注册 方可回帖
返回
//