首页
社区
课程
招聘
[求助]有什么方法能拦截对内核内存的读写
发表于: 2014-8-6 21:10 4964

[求助]有什么方法能拦截对内核内存的读写

2014-8-6 21:10
4964
有线程要读/写内核地址0xABCDEF00,请问HOOK什么东西能拦截到。同时提供详细信息,告诉我【谁(线程ETHREAD或TID)】要【读/写】什么【地址】以及【长度】是多少。

别跟我说双机调试挂WINDBG!我说的是正常的系统,要我的驱动来同意是否允许读写。

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

收藏
免费 0
支持
分享
最新回复 (8)
雪    币: 67
活跃值: (12)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
你以为你是谁啊?
这个简单的很,就是不告诉你,让你自己去死琢磨吧!
2014-8-6 21:17
0
雪    币: 1
活跃值: (14)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
你这SB玩意不想说就别进老子的贴。进来找骂么?
2014-8-6 21:23
0
雪    币: 261
活跃值: (51)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
我是菜鸟,只是说一下自己的看法

如果可以挂钩系统的虚拟内存管理的话,至少可以在读写和访问的时候拦截到
2014-8-6 21:27
0
雪    币: 1
活跃值: (14)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
我想在读和写的时候拦截到。拦截ExAllocatePool和ExFreePool是在申请和释放的时候拦截到。

你说的系统的虚拟内存管理具体是哪些函数?
2014-8-6 21:31
0
雪    币: 110
活跃值: (34)
能力值: (RANK:50 )
在线值:
发帖
回帖
粉丝
6
由于在CPL=0的环境下可以直接访问属于内核的地址范围,而当被访问的页面在物理内存中时正常情况下是无法通过传统的手段拦截到的。
要拦截对特定位置的访问可以通过配置DR寄存器,不过这个方法通用性不好。
另外一种方法是通过制造缺页并hook缺页中断实现拦截,这个方法也可以升级一下使用VT-X实现
2014-8-6 23:23
0
雪    币: 67
活跃值: (12)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
纯粹讨骂的XZZ!
2014-8-7 02:24
0
雪    币: 261
活跃值: (51)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
呃我只是说理论上,系统会在程序读取或写入内存的时候把虚拟地址映射到物理地址上,接管这个过程就可以做到监控
但是我不会~
2014-8-7 07:07
0
雪    币: 68
活跃值: (110)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
我的办法是hook中断1,然后设置硬件断点,实现方法看 《软件调试》一书。
2014-8-7 10:42
0
游客
登录 | 注册 方可回帖
返回
//