内核与应用层内存映射技术.pdfVIP

  • 0
  • 0
  • 约1.96万字
  • 约 16页
  • 2026-09-20 发布于北京
  • 举报

在上一篇博文《驱动开发:内核通过PEB获取进程参数》中我们通过使用

KeStackAttachProcess附加进程

的方式获取了该进程的PEB结构信息,本篇文章同样需要使用进程附加功能,但这次实现一个更加

有趣的功能,在某些情况下应用层与内核层需要共片内存区域,通过这片区域可打通内核与应用层的

,此类功能的实现依赖于MDL内存映射机制实现。|end▁of▁sentence|

应用层(R3)数据映射到内核层(R0)|end▁of▁

sentence|

先来实现将R3内存数据拷贝到R0中,功能实现所调用的API如下:|end▁of▁sentence|

IoAllocateMdl该函数用于创建MDL

(类似初始化)MmProbeAndLockPages用于锁定创建的地址

其中UserMode

代表用户层,IoReadAccess

以的方式锁定M

mGetSystemAddressForMdlSafe用于从MDL

中得到映射内存地址RtlCopyMemory用于内存拷

贝,将DstAddr

应用层中的数据拷贝到pMapped

文档评论(0)

1亿VIP精品文档

相关文档