-
-
[讨论]搜索ntoskrnl内存,遇到问题
-
发表于: 2009-3-13 00:29 3168
-
DriverEntry里搜索地址范围位于base和base+size之间内存,引起崩溃
加MmIsAddressValid()判断后,该函数返回false,
但是硬编码这个地址的函数,是可以直接调用执行的,不会出错,
这样的话似乎有些矛盾了,既然这里的内存可以执行,说明代码在内存中,或者被交换出去了,总之应该是可以读取和执行的,因为DriverEntry是运行在PASSIVE_LEVEL的.
既然这样,为什么搜索读取会蓝呢?
另外不同机器上,情况不同,虚拟机一般不会有这样的地址,测试了几个机器,出问题的地址都不尽相同.同样的系统,相同大小内存,不同cpu,出问题地方都不同
加MmIsAddressValid()判断后,该函数返回false,
但是硬编码这个地址的函数,是可以直接调用执行的,不会出错,
这样的话似乎有些矛盾了,既然这里的内存可以执行,说明代码在内存中,或者被交换出去了,总之应该是可以读取和执行的,因为DriverEntry是运行在PASSIVE_LEVEL的.
既然这样,为什么搜索读取会蓝呢?
另外不同机器上,情况不同,虚拟机一般不会有这样的地址,测试了几个机器,出问题的地址都不尽相同.同样的系统,相同大小内存,不同cpu,出问题地方都不同
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课
赞赏
他的文章
- [讨论]搜索ntoskrnl内存,遇到问题 3169
- [原创]np np np ~~ 17201
- 想做个OD原版基础上包含所有修改代码的dll 7222
- 想购买一个x64的壳,最好vc8兼容性要好,不知道哪里有? 4433
看原图
赞赏
雪币:
留言: