carwin
驱动牛犊
驱动牛犊
  • 注册日期2007-05-27
  • 最后登录2010-03-15
  • 粉丝0
  • 关注0
  • 积分304分
  • 威望71点
  • 贡献值0点
  • 好评度30点
  • 原创分0分
  • 专家分0分
阅读:2699回复:10

驱动中怎样分配可执行内存?

楼主#
更多 发布于:2007-06-02 16:19
我hook ntfs的dispatch的时候,发现可以在winobj中看到我的驱动hook了哪个dispatch。我想如果在内核中分配一块可执行的内存,把我的代码复制过去再hook,winobj应该是不知道是哪个驱动hook的了。
   但是ExAllocatePool***这些函数,我看来ddk,貌似都没有分配可执行内存的参数呢?
恳请哪位知道的大哥指点一下。。。
carwin
驱动牛犊
驱动牛犊
  • 注册日期2007-05-27
  • 最后登录2010-03-15
  • 粉丝0
  • 关注0
  • 积分304分
  • 威望71点
  • 贡献值0点
  • 好评度30点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2007-06-03 14:07
自己顶一下了。
会还是不会的牛人都顶一顶噻。。。
carwin
驱动牛犊
驱动牛犊
  • 注册日期2007-05-27
  • 最后登录2010-03-15
  • 粉丝0
  • 关注0
  • 积分304分
  • 威望71点
  • 贡献值0点
  • 好评度30点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2007-06-05 08:05
直接可以?我试试哈。
那天看到一篇文章说内核也有DEP,如下。我还以为不能执行呢。
我先实验一下了来哈。
/*
• 内核模式 DEP
对于用户模式和内核模式,DEP 的工作原理相同。在内核模式下,不能分别为每个驱动程序启用或禁用内存区域 DEP。默认情况下,在 32 位 Windows 版本上,DEP 仅适用于堆栈。在 64 位 Windows 版本上,DEP 适用于堆栈、页面缓冲池和会话池。内核模式下的访问冲突将导致出现 Bugcheck 0x000000FC: ATTEMPTED_EXECUTE_OF_NONEXECUTE_MEMORY。
兼容性问题
*/
carwin
驱动牛犊
驱动牛犊
  • 注册日期2007-05-27
  • 最后登录2010-03-15
  • 粉丝0
  • 关注0
  • 积分304分
  • 威望71点
  • 贡献值0点
  • 好评度30点
  • 原创分0分
  • 专家分0分
地板#
发布于:2007-06-06 09:10
恩,实验了一下。果然能执行。
谢谢各位指点哈。    
不过killvxk说的IRQL应该是个问题。
游客

返回顶部